{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "os.chdir('../')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "RDKit WARNING: [14:01:11] Enabling RDKit 2019.09.3 jupyter extensions\n"
     ]
    }
   ],
   "source": [
    "import DeepPurpose.models as models\n",
    "from DeepPurpose.utils import *\n",
    "from DeepPurpose.dataset import *\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Beginning Processing...\n",
      "Beginning to extract zip file...\n",
      "Done!\n",
      "in total: 118254 drug-target pairs\n",
      "encoding drug...\n",
      "unique drugs: 2068\n",
      "drug encoding finished...\n",
      "encoding protein...\n",
      "unique target sequence: 229\n",
      "protein encoding finished...\n",
      "splitting dataset...\n",
      "Done.\n",
      "cost about 23 seconds\n"
     ]
    }
   ],
   "source": [
    "from time import time\n",
    "\n",
    "t1 = time()\n",
    "X_drug, X_target, y = load_process_KIBA('./data/', binary=False)\n",
    "\n",
    "drug_encoding = 'CNN'\n",
    "target_encoding = 'Transformer'\n",
    "train, val, test = data_process(X_drug, X_target, y, \n",
    "                                drug_encoding, target_encoding, \n",
    "                                split_method='random',frac=[0.7,0.1,0.2])\n",
    "\n",
    "# use the parameters setting provided in the paper: https://arxiv.org/abs/1801.10193\n",
    "config = generate_config(drug_encoding = drug_encoding, \n",
    "                         target_encoding = target_encoding, \n",
    "                         cls_hidden_dims = [1024,1024,512], \n",
    "                         train_epoch = 100, \n",
    "                         test_every_X_epoch = 10, \n",
    "                         LR = 0.001, \n",
    "                         batch_size = 128,\n",
    "                         hidden_dim_drug = 128,\n",
    "                         mpnn_hidden_size = 128,\n",
    "                         mpnn_depth = 3, \n",
    "                         cnn_target_filters = [32,64,96],\n",
    "                         cnn_target_kernels = [4,8,12]\n",
    "                        )\n",
    "model = models.model_initialize(**config)\n",
    "t2 = time()\n",
    "print(\"cost about \" + str(int(t2-t1)) + \" seconds\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Let's use 1 GPU!\n",
      "--- Data Preparation ---\n",
      "--- Go for Training ---\n",
      "Training at Epoch 1 iteration 0 with loss 139.814. Total time 0.0 hours\n",
      "Training at Epoch 1 iteration 100 with loss 0.91957. Total time 0.01472 hours\n",
      "Training at Epoch 1 iteration 200 with loss 0.74427. Total time 0.02916 hours\n",
      "Training at Epoch 1 iteration 300 with loss 0.84496. Total time 0.04416 hours\n",
      "Training at Epoch 1 iteration 400 with loss 0.89281. Total time 0.06027 hours\n",
      "Training at Epoch 1 iteration 500 with loss 0.65110. Total time 0.07833 hours\n",
      "Training at Epoch 1 iteration 600 with loss 0.59749. Total time 0.09694 hours\n",
      "Validation at Epoch 1 , MSE: 0.54464 , Pearson Correlation: 0.50593 with p-value: 0.0 , Concordance Index: 0.69898\n",
      "Training at Epoch 2 iteration 0 with loss 1.47413. Total time 0.11583 hours\n",
      "Training at Epoch 2 iteration 100 with loss 0.75578. Total time 0.13444 hours\n",
      "Training at Epoch 2 iteration 200 with loss 0.78673. Total time 0.15277 hours\n",
      "Training at Epoch 2 iteration 300 with loss 0.83657. Total time 0.17138 hours\n",
      "Training at Epoch 2 iteration 400 with loss 1.25876. Total time 0.19 hours\n",
      "Training at Epoch 2 iteration 500 with loss 0.69684. Total time 0.20833 hours\n",
      "Training at Epoch 2 iteration 600 with loss 0.69843. Total time 0.22694 hours\n",
      "Validation at Epoch 2 , MSE: 0.45369 , Pearson Correlation: 0.60773 with p-value: 0.0 , Concordance Index: 0.74026\n",
      "Training at Epoch 3 iteration 0 with loss 0.80802. Total time 0.24472 hours\n",
      "Training at Epoch 3 iteration 100 with loss 0.64677. Total time 0.25944 hours\n",
      "Training at Epoch 3 iteration 200 with loss 0.49684. Total time 0.27388 hours\n",
      "Training at Epoch 3 iteration 300 with loss 0.40556. Total time 0.28861 hours\n",
      "Training at Epoch 3 iteration 400 with loss 0.60786. Total time 0.30305 hours\n",
      "Training at Epoch 3 iteration 500 with loss 0.83596. Total time 0.31777 hours\n",
      "Training at Epoch 3 iteration 600 with loss 0.56806. Total time 0.3325 hours\n",
      "Validation at Epoch 3 , MSE: 0.42179 , Pearson Correlation: 0.63822 with p-value: 0.0 , Concordance Index: 0.74689\n",
      "Training at Epoch 4 iteration 0 with loss 0.58433. Total time 0.34583 hours\n",
      "Training at Epoch 4 iteration 100 with loss 0.49994. Total time 0.36055 hours\n",
      "Training at Epoch 4 iteration 200 with loss 0.38497. Total time 0.375 hours\n",
      "Training at Epoch 4 iteration 300 with loss 0.57636. Total time 0.38972 hours\n",
      "Training at Epoch 4 iteration 400 with loss 0.78101. Total time 0.40416 hours\n",
      "Training at Epoch 4 iteration 500 with loss 0.80084. Total time 0.41888 hours\n",
      "Training at Epoch 4 iteration 600 with loss 0.66387. Total time 0.43333 hours\n",
      "Validation at Epoch 4 , MSE: 0.40969 , Pearson Correlation: 0.68333 with p-value: 0.0 , Concordance Index: 0.76669\n",
      "Training at Epoch 5 iteration 0 with loss 0.51058. Total time 0.44666 hours\n",
      "Training at Epoch 5 iteration 100 with loss 0.57093. Total time 0.46111 hours\n",
      "Training at Epoch 5 iteration 200 with loss 0.55396. Total time 0.47583 hours\n",
      "Training at Epoch 5 iteration 300 with loss 0.56496. Total time 0.49027 hours\n",
      "Training at Epoch 5 iteration 400 with loss 0.72063. Total time 0.50472 hours\n",
      "Training at Epoch 5 iteration 500 with loss 0.78196. Total time 0.51916 hours\n",
      "Training at Epoch 5 iteration 600 with loss 0.75836. Total time 0.53361 hours\n",
      "Validation at Epoch 5 , MSE: 0.36573 , Pearson Correlation: 0.69763 with p-value: 0.0 , Concordance Index: 0.77265\n",
      "Training at Epoch 6 iteration 0 with loss 0.40581. Total time 0.54694 hours\n",
      "Training at Epoch 6 iteration 100 with loss 0.56354. Total time 0.56194 hours\n",
      "Training at Epoch 6 iteration 200 with loss 0.78160. Total time 0.57638 hours\n",
      "Training at Epoch 6 iteration 300 with loss 0.70091. Total time 0.59111 hours\n",
      "Training at Epoch 6 iteration 400 with loss 0.45137. Total time 0.60555 hours\n",
      "Training at Epoch 6 iteration 500 with loss 0.52654. Total time 0.62 hours\n",
      "Training at Epoch 6 iteration 600 with loss 0.50267. Total time 0.63444 hours\n",
      "Validation at Epoch 6 , MSE: 0.42529 , Pearson Correlation: 0.71124 with p-value: 0.0 , Concordance Index: 0.78204\n",
      "Training at Epoch 7 iteration 0 with loss 0.57204. Total time 0.64777 hours\n",
      "Training at Epoch 7 iteration 100 with loss 0.61033. Total time 0.6625 hours\n",
      "Training at Epoch 7 iteration 200 with loss 0.43413. Total time 0.67694 hours\n",
      "Training at Epoch 7 iteration 300 with loss 0.66856. Total time 0.69138 hours\n",
      "Training at Epoch 7 iteration 400 with loss 0.34791. Total time 0.70583 hours\n",
      "Training at Epoch 7 iteration 500 with loss 0.30887. Total time 0.72027 hours\n",
      "Training at Epoch 7 iteration 600 with loss 0.60996. Total time 0.735 hours\n",
      "Validation at Epoch 7 , MSE: 0.50626 , Pearson Correlation: 0.72114 with p-value: 0.0 , Concordance Index: 0.77985\n",
      "Training at Epoch 8 iteration 0 with loss 0.56785. Total time 0.74833 hours\n"
     ]
    }
   ],
   "source": [
    "model.train(train, val, test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.save_model('./model_cnn_transformer_kiba')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "RDKit WARNING: [20:13:35] Enabling RDKit 2019.09.3 jupyter extensions\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Beginning Processing...\n",
      "Beginning to extract zip file...\n",
      "Default set to logspace (nM -> p) for easier regression\n",
      "Done!\n",
      "in total: 30056 drug-target pairs\n",
      "encoding drug...\n",
      "unique drugs: 68\n",
      "drug encoding finished...\n",
      "encoding protein...\n",
      "unique target sequence: 379\n",
      "protein encoding finished...\n",
      "splitting dataset...\n",
      "Done.\n",
      "cost about 23 seconds\n",
      "Let's use 1 GPU!\n",
      "--- Data Preparation ---\n",
      "--- Go for Training ---\n",
      "Training at Epoch 1 iteration 0 with loss 31.9207. Total time 0.0 hours\n",
      "Training at Epoch 1 iteration 100 with loss 0.93901. Total time 0.01444 hours\n",
      "Validation at Epoch 1 , MSE: 0.75072 , Pearson Correlation: 0.34637 with p-value: 1.78719 , Concordance Index: 0.66790\n",
      "Training at Epoch 2 iteration 0 with loss 0.82213. Total time 0.02555 hours\n",
      "Training at Epoch 2 iteration 100 with loss 0.51448. Total time 0.03972 hours\n",
      "Validation at Epoch 2 , MSE: 0.61241 , Pearson Correlation: 0.54445 with p-value: 1.19932 , Concordance Index: 0.78108\n",
      "Training at Epoch 3 iteration 0 with loss 0.53520. Total time 0.05083 hours\n",
      "Training at Epoch 3 iteration 100 with loss 0.55234. Total time 0.06527 hours\n",
      "Validation at Epoch 3 , MSE: 0.59736 , Pearson Correlation: 0.56524 with p-value: 2.07554 , Concordance Index: 0.78497\n",
      "Training at Epoch 4 iteration 0 with loss 0.60522. Total time 0.07611 hours\n",
      "Training at Epoch 4 iteration 100 with loss 0.61242. Total time 0.09055 hours\n",
      "Validation at Epoch 4 , MSE: 0.58593 , Pearson Correlation: 0.61752 with p-value: 1.36035 , Concordance Index: 0.79572\n",
      "Training at Epoch 5 iteration 0 with loss 0.50129. Total time 0.10138 hours\n",
      "Training at Epoch 5 iteration 100 with loss 0.80891. Total time 0.11583 hours\n",
      "Validation at Epoch 5 , MSE: 0.54869 , Pearson Correlation: 0.63083 with p-value: 0.0 , Concordance Index: 0.79770\n",
      "Training at Epoch 6 iteration 0 with loss 0.42818. Total time 0.12694 hours\n",
      "Training at Epoch 6 iteration 100 with loss 0.43936. Total time 0.14138 hours\n",
      "Validation at Epoch 6 , MSE: 0.48278 , Pearson Correlation: 0.65008 with p-value: 0.0 , Concordance Index: 0.81394\n",
      "Training at Epoch 7 iteration 0 with loss 0.47955. Total time 0.15222 hours\n",
      "Training at Epoch 7 iteration 100 with loss 0.51875. Total time 0.16638 hours\n",
      "Validation at Epoch 7 , MSE: 0.53587 , Pearson Correlation: 0.65923 with p-value: 0.0 , Concordance Index: 0.80799\n",
      "Training at Epoch 8 iteration 0 with loss 0.60651. Total time 0.17722 hours\n",
      "Training at Epoch 8 iteration 100 with loss 0.47397. Total time 0.19166 hours\n",
      "Validation at Epoch 8 , MSE: 0.57738 , Pearson Correlation: 0.67088 with p-value: 0.0 , Concordance Index: 0.81078\n",
      "Training at Epoch 9 iteration 0 with loss 0.60139. Total time 0.2025 hours\n",
      "Training at Epoch 9 iteration 100 with loss 0.50037. Total time 0.21666 hours\n",
      "Validation at Epoch 9 , MSE: 0.55496 , Pearson Correlation: 0.69494 with p-value: 0.0 , Concordance Index: 0.82707\n",
      "Training at Epoch 10 iteration 0 with loss 0.64164. Total time 0.2275 hours\n",
      "Training at Epoch 10 iteration 100 with loss 0.47171. Total time 0.24194 hours\n",
      "Validation at Epoch 10 , MSE: 0.47021 , Pearson Correlation: 0.70384 with p-value: 0.0 , Concordance Index: 0.82045\n",
      "Training at Epoch 11 iteration 0 with loss 0.46943. Total time 0.25277 hours\n",
      "Training at Epoch 11 iteration 100 with loss 0.43980. Total time 0.26694 hours\n",
      "Validation at Epoch 11 , MSE: 0.41591 , Pearson Correlation: 0.71363 with p-value: 0.0 , Concordance Index: 0.82549\n",
      "Training at Epoch 12 iteration 0 with loss 0.38057. Total time 0.27805 hours\n",
      "Training at Epoch 12 iteration 100 with loss 0.52933. Total time 0.29222 hours\n",
      "Validation at Epoch 12 , MSE: 0.42369 , Pearson Correlation: 0.71759 with p-value: 0.0 , Concordance Index: 0.83305\n",
      "Training at Epoch 13 iteration 0 with loss 0.30533. Total time 0.30305 hours\n",
      "Training at Epoch 13 iteration 100 with loss 0.55686. Total time 0.31722 hours\n",
      "Validation at Epoch 13 , MSE: 0.40619 , Pearson Correlation: 0.71585 with p-value: 0.0 , Concordance Index: 0.83184\n",
      "Training at Epoch 14 iteration 0 with loss 0.31267. Total time 0.32805 hours\n",
      "Training at Epoch 14 iteration 100 with loss 0.46777. Total time 0.3425 hours\n",
      "Validation at Epoch 14 , MSE: 0.50065 , Pearson Correlation: 0.71895 with p-value: 0.0 , Concordance Index: 0.83158\n",
      "Training at Epoch 15 iteration 0 with loss 0.42253. Total time 0.35333 hours\n",
      "Training at Epoch 15 iteration 100 with loss 0.40271. Total time 0.3675 hours\n",
      "Validation at Epoch 15 , MSE: 0.47010 , Pearson Correlation: 0.73756 with p-value: 0.0 , Concordance Index: 0.84980\n",
      "Training at Epoch 16 iteration 0 with loss 0.55849. Total time 0.37833 hours\n",
      "Training at Epoch 16 iteration 100 with loss 0.36741. Total time 0.39305 hours\n",
      "Validation at Epoch 16 , MSE: 0.44687 , Pearson Correlation: 0.72857 with p-value: 0.0 , Concordance Index: 0.84150\n",
      "Training at Epoch 17 iteration 0 with loss 0.33285. Total time 0.40388 hours\n",
      "Training at Epoch 17 iteration 100 with loss 0.25086. Total time 0.41805 hours\n",
      "Validation at Epoch 17 , MSE: 0.36850 , Pearson Correlation: 0.75823 with p-value: 0.0 , Concordance Index: 0.85089\n",
      "Training at Epoch 18 iteration 0 with loss 0.33572. Total time 0.42888 hours\n",
      "Training at Epoch 18 iteration 100 with loss 0.30056. Total time 0.44333 hours\n",
      "Validation at Epoch 18 , MSE: 0.51692 , Pearson Correlation: 0.73438 with p-value: 0.0 , Concordance Index: 0.83467\n",
      "Training at Epoch 19 iteration 0 with loss 0.52799. Total time 0.45416 hours\n",
      "Training at Epoch 19 iteration 100 with loss 0.47794. Total time 0.46833 hours\n",
      "Validation at Epoch 19 , MSE: 0.41509 , Pearson Correlation: 0.74693 with p-value: 0.0 , Concordance Index: 0.85000\n",
      "Training at Epoch 20 iteration 0 with loss 0.56925. Total time 0.47916 hours\n",
      "Training at Epoch 20 iteration 100 with loss 0.45212. Total time 0.49333 hours\n",
      "Validation at Epoch 20 , MSE: 0.46845 , Pearson Correlation: 0.75174 with p-value: 0.0 , Concordance Index: 0.83591\n",
      "Training at Epoch 21 iteration 0 with loss 0.42008. Total time 0.50416 hours\n",
      "Training at Epoch 21 iteration 100 with loss 0.25872. Total time 0.51861 hours\n",
      "Validation at Epoch 21 , MSE: 0.36187 , Pearson Correlation: 0.75706 with p-value: 0.0 , Concordance Index: 0.84881\n",
      "Training at Epoch 22 iteration 0 with loss 0.43315. Total time 0.52944 hours\n",
      "Training at Epoch 22 iteration 100 with loss 0.22847. Total time 0.54361 hours\n",
      "Validation at Epoch 22 , MSE: 0.43431 , Pearson Correlation: 0.76101 with p-value: 0.0 , Concordance Index: 0.85050\n",
      "Training at Epoch 23 iteration 0 with loss 0.33679. Total time 0.55444 hours\n",
      "Training at Epoch 23 iteration 100 with loss 0.28760. Total time 0.56861 hours\n",
      "Validation at Epoch 23 , MSE: 0.37235 , Pearson Correlation: 0.76203 with p-value: 0.0 , Concordance Index: 0.85445\n",
      "Training at Epoch 24 iteration 0 with loss 0.37866. Total time 0.57944 hours\n",
      "Training at Epoch 24 iteration 100 with loss 0.32550. Total time 0.59388 hours\n",
      "Validation at Epoch 24 , MSE: 0.40046 , Pearson Correlation: 0.74386 with p-value: 0.0 , Concordance Index: 0.83701\n",
      "Training at Epoch 25 iteration 0 with loss 0.36190. Total time 0.60444 hours\n",
      "Training at Epoch 25 iteration 100 with loss 0.37303. Total time 0.61888 hours\n",
      "Validation at Epoch 25 , MSE: 0.35790 , Pearson Correlation: 0.76130 with p-value: 0.0 , Concordance Index: 0.85237\n",
      "Training at Epoch 26 iteration 0 with loss 0.29862. Total time 0.62972 hours\n",
      "Training at Epoch 26 iteration 100 with loss 0.37451. Total time 0.64388 hours\n",
      "Validation at Epoch 26 , MSE: 0.42587 , Pearson Correlation: 0.76605 with p-value: 0.0 , Concordance Index: 0.85404\n",
      "Training at Epoch 27 iteration 0 with loss 0.29374. Total time 0.65472 hours\n",
      "Training at Epoch 27 iteration 100 with loss 0.34422. Total time 0.66916 hours\n",
      "Validation at Epoch 27 , MSE: 0.33631 , Pearson Correlation: 0.77625 with p-value: 0.0 , Concordance Index: 0.85578\n",
      "Training at Epoch 28 iteration 0 with loss 0.25732. Total time 0.68 hours\n",
      "Training at Epoch 28 iteration 100 with loss 0.26876. Total time 0.69416 hours\n",
      "Validation at Epoch 28 , MSE: 0.34691 , Pearson Correlation: 0.76323 with p-value: 0.0 , Concordance Index: 0.84819\n",
      "Training at Epoch 29 iteration 0 with loss 0.36528. Total time 0.705 hours\n",
      "Training at Epoch 29 iteration 100 with loss 0.23645. Total time 0.71916 hours\n",
      "Validation at Epoch 29 , MSE: 0.35562 , Pearson Correlation: 0.76859 with p-value: 0.0 , Concordance Index: 0.85145\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 30 iteration 0 with loss 0.28248. Total time 0.73 hours\n",
      "Training at Epoch 30 iteration 100 with loss 0.27466. Total time 0.74444 hours\n",
      "Validation at Epoch 30 , MSE: 0.36028 , Pearson Correlation: 0.78073 with p-value: 0.0 , Concordance Index: 0.87010\n",
      "Training at Epoch 31 iteration 0 with loss 0.24419. Total time 0.75527 hours\n",
      "Training at Epoch 31 iteration 100 with loss 0.18026. Total time 0.76972 hours\n",
      "Validation at Epoch 31 , MSE: 0.43296 , Pearson Correlation: 0.77246 with p-value: 0.0 , Concordance Index: 0.85892\n",
      "Training at Epoch 32 iteration 0 with loss 0.35502. Total time 0.78055 hours\n",
      "Training at Epoch 32 iteration 100 with loss 0.22337. Total time 0.79472 hours\n",
      "Validation at Epoch 32 , MSE: 0.50857 , Pearson Correlation: 0.77817 with p-value: 0.0 , Concordance Index: 0.86114\n",
      "Training at Epoch 33 iteration 0 with loss 0.52276. Total time 0.80555 hours\n",
      "Training at Epoch 33 iteration 100 with loss 0.33742. Total time 0.81972 hours\n",
      "Validation at Epoch 33 , MSE: 0.34856 , Pearson Correlation: 0.77722 with p-value: 0.0 , Concordance Index: 0.86094\n",
      "Training at Epoch 34 iteration 0 with loss 0.38415. Total time 0.83055 hours\n",
      "Training at Epoch 34 iteration 100 with loss 0.38094. Total time 0.845 hours\n",
      "Validation at Epoch 34 , MSE: 0.33760 , Pearson Correlation: 0.77176 with p-value: 0.0 , Concordance Index: 0.86402\n",
      "Training at Epoch 35 iteration 0 with loss 0.25203. Total time 0.85583 hours\n",
      "Training at Epoch 35 iteration 100 with loss 0.20616. Total time 0.87 hours\n",
      "Validation at Epoch 35 , MSE: 0.33043 , Pearson Correlation: 0.78239 with p-value: 0.0 , Concordance Index: 0.86208\n",
      "Training at Epoch 36 iteration 0 with loss 0.36883. Total time 0.88083 hours\n",
      "Training at Epoch 36 iteration 100 with loss 0.33657. Total time 0.89527 hours\n",
      "Validation at Epoch 36 , MSE: 0.43438 , Pearson Correlation: 0.78210 with p-value: 0.0 , Concordance Index: 0.85791\n",
      "Training at Epoch 37 iteration 0 with loss 0.38201. Total time 0.90583 hours\n",
      "Training at Epoch 37 iteration 100 with loss 0.51263. Total time 0.92027 hours\n",
      "Validation at Epoch 37 , MSE: 0.33401 , Pearson Correlation: 0.77888 with p-value: 0.0 , Concordance Index: 0.85603\n",
      "Training at Epoch 38 iteration 0 with loss 0.30682. Total time 0.93111 hours\n",
      "Training at Epoch 38 iteration 100 with loss 0.38447. Total time 0.94527 hours\n",
      "Validation at Epoch 38 , MSE: 0.31845 , Pearson Correlation: 0.78579 with p-value: 0.0 , Concordance Index: 0.86591\n",
      "Training at Epoch 39 iteration 0 with loss 0.22709. Total time 0.95611 hours\n",
      "Training at Epoch 39 iteration 100 with loss 0.30775. Total time 0.97055 hours\n",
      "Validation at Epoch 39 , MSE: 0.35587 , Pearson Correlation: 0.77160 with p-value: 0.0 , Concordance Index: 0.86454\n",
      "Training at Epoch 40 iteration 0 with loss 0.23000. Total time 0.98111 hours\n",
      "Training at Epoch 40 iteration 100 with loss 0.25211. Total time 0.99555 hours\n",
      "Validation at Epoch 40 , MSE: 0.32366 , Pearson Correlation: 0.78355 with p-value: 0.0 , Concordance Index: 0.86600\n",
      "Training at Epoch 41 iteration 0 with loss 0.25234. Total time 1.00638 hours\n",
      "Training at Epoch 41 iteration 100 with loss 0.31256. Total time 1.02055 hours\n",
      "Validation at Epoch 41 , MSE: 0.38833 , Pearson Correlation: 0.79174 with p-value: 0.0 , Concordance Index: 0.86973\n",
      "Training at Epoch 42 iteration 0 with loss 0.40617. Total time 1.03138 hours\n",
      "Training at Epoch 42 iteration 100 with loss 0.28528. Total time 1.04583 hours\n",
      "Validation at Epoch 42 , MSE: 0.31595 , Pearson Correlation: 0.79590 with p-value: 0.0 , Concordance Index: 0.87461\n",
      "Training at Epoch 43 iteration 0 with loss 0.28541. Total time 1.05666 hours\n",
      "Training at Epoch 43 iteration 100 with loss 0.15027. Total time 1.07083 hours\n",
      "Validation at Epoch 43 , MSE: 0.33731 , Pearson Correlation: 0.78749 with p-value: 0.0 , Concordance Index: 0.86659\n",
      "Training at Epoch 44 iteration 0 with loss 0.20557. Total time 1.08166 hours\n",
      "Training at Epoch 44 iteration 100 with loss 0.29128. Total time 1.09583 hours\n",
      "Validation at Epoch 44 , MSE: 0.46200 , Pearson Correlation: 0.79117 with p-value: 0.0 , Concordance Index: 0.87218\n",
      "Training at Epoch 45 iteration 0 with loss 0.41498. Total time 1.10666 hours\n",
      "Training at Epoch 45 iteration 100 with loss 0.21807. Total time 1.12111 hours\n",
      "Validation at Epoch 45 , MSE: 0.30667 , Pearson Correlation: 0.80673 with p-value: 0.0 , Concordance Index: 0.87655\n",
      "Training at Epoch 46 iteration 0 with loss 0.20049. Total time 1.13166 hours\n",
      "Training at Epoch 46 iteration 100 with loss 0.17543. Total time 1.14611 hours\n",
      "Validation at Epoch 46 , MSE: 0.32081 , Pearson Correlation: 0.79381 with p-value: 0.0 , Concordance Index: 0.86597\n",
      "Training at Epoch 47 iteration 0 with loss 0.19056. Total time 1.15694 hours\n",
      "Training at Epoch 47 iteration 100 with loss 0.22017. Total time 1.17111 hours\n",
      "Validation at Epoch 47 , MSE: 0.30264 , Pearson Correlation: 0.80087 with p-value: 0.0 , Concordance Index: 0.87299\n",
      "Training at Epoch 48 iteration 0 with loss 0.23753. Total time 1.18194 hours\n",
      "Training at Epoch 48 iteration 100 with loss 0.31721. Total time 1.19638 hours\n",
      "Validation at Epoch 48 , MSE: 0.28650 , Pearson Correlation: 0.81162 with p-value: 0.0 , Concordance Index: 0.88208\n",
      "Training at Epoch 49 iteration 0 with loss 0.17869. Total time 1.20722 hours\n",
      "Training at Epoch 49 iteration 100 with loss 0.23237. Total time 1.22138 hours\n",
      "Validation at Epoch 49 , MSE: 0.35322 , Pearson Correlation: 0.78168 with p-value: 0.0 , Concordance Index: 0.86350\n",
      "Training at Epoch 50 iteration 0 with loss 0.17127. Total time 1.23222 hours\n",
      "Training at Epoch 50 iteration 100 with loss 0.25133. Total time 1.24694 hours\n",
      "Validation at Epoch 50 , MSE: 0.31666 , Pearson Correlation: 0.78987 with p-value: 0.0 , Concordance Index: 0.85283\n",
      "Training at Epoch 51 iteration 0 with loss 0.16723. Total time 1.25777 hours\n",
      "Training at Epoch 51 iteration 100 with loss 0.25157. Total time 1.27222 hours\n",
      "Validation at Epoch 51 , MSE: 0.31768 , Pearson Correlation: 0.79149 with p-value: 0.0 , Concordance Index: 0.87175\n",
      "Training at Epoch 52 iteration 0 with loss 0.23979. Total time 1.28305 hours\n",
      "Training at Epoch 52 iteration 100 with loss 0.16142. Total time 1.29722 hours\n",
      "Validation at Epoch 52 , MSE: 0.30078 , Pearson Correlation: 0.80623 with p-value: 0.0 , Concordance Index: 0.87684\n",
      "Training at Epoch 53 iteration 0 with loss 0.14631. Total time 1.30805 hours\n",
      "Training at Epoch 53 iteration 100 with loss 0.17161. Total time 1.3225 hours\n",
      "Validation at Epoch 53 , MSE: 0.31077 , Pearson Correlation: 0.79796 with p-value: 0.0 , Concordance Index: 0.87213\n",
      "Training at Epoch 54 iteration 0 with loss 0.17814. Total time 1.33361 hours\n",
      "Training at Epoch 54 iteration 100 with loss 0.20290. Total time 1.34777 hours\n",
      "Validation at Epoch 54 , MSE: 0.29802 , Pearson Correlation: 0.81482 with p-value: 0.0 , Concordance Index: 0.87163\n",
      "Training at Epoch 55 iteration 0 with loss 0.21449. Total time 1.35861 hours\n",
      "Training at Epoch 55 iteration 100 with loss 0.19863. Total time 1.37305 hours\n",
      "Validation at Epoch 55 , MSE: 0.27978 , Pearson Correlation: 0.81867 with p-value: 0.0 , Concordance Index: 0.87804\n",
      "Training at Epoch 56 iteration 0 with loss 0.28852. Total time 1.38388 hours\n",
      "Training at Epoch 56 iteration 100 with loss 0.25426. Total time 1.39888 hours\n",
      "Validation at Epoch 56 , MSE: 0.29505 , Pearson Correlation: 0.80744 with p-value: 0.0 , Concordance Index: 0.87373\n",
      "Training at Epoch 57 iteration 0 with loss 0.16479. Total time 1.40972 hours\n",
      "Training at Epoch 57 iteration 100 with loss 0.21398. Total time 1.42388 hours\n",
      "Validation at Epoch 57 , MSE: 0.29615 , Pearson Correlation: 0.80818 with p-value: 0.0 , Concordance Index: 0.87208\n",
      "Training at Epoch 58 iteration 0 with loss 0.22385. Total time 1.43472 hours\n",
      "Training at Epoch 58 iteration 100 with loss 0.34008. Total time 1.44916 hours\n",
      "Validation at Epoch 58 , MSE: 0.29133 , Pearson Correlation: 0.81162 with p-value: 0.0 , Concordance Index: 0.87761\n",
      "Training at Epoch 59 iteration 0 with loss 0.25818. Total time 1.46 hours\n",
      "Training at Epoch 59 iteration 100 with loss 0.18284. Total time 1.47416 hours\n",
      "Validation at Epoch 59 , MSE: 0.29372 , Pearson Correlation: 0.80998 with p-value: 0.0 , Concordance Index: 0.87141\n",
      "Training at Epoch 60 iteration 0 with loss 0.19027. Total time 1.485 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 60 iteration 100 with loss 0.18195. Total time 1.49944 hours\n",
      "Validation at Epoch 60 , MSE: 0.28312 , Pearson Correlation: 0.81594 with p-value: 0.0 , Concordance Index: 0.87152\n",
      "Training at Epoch 61 iteration 0 with loss 0.17628. Total time 1.51027 hours\n",
      "Training at Epoch 61 iteration 100 with loss 0.16032. Total time 1.52444 hours\n",
      "Validation at Epoch 61 , MSE: 0.35071 , Pearson Correlation: 0.80322 with p-value: 0.0 , Concordance Index: 0.87418\n",
      "Training at Epoch 62 iteration 0 with loss 0.20897. Total time 1.53527 hours\n",
      "Training at Epoch 62 iteration 100 with loss 0.26248. Total time 1.54972 hours\n",
      "Validation at Epoch 62 , MSE: 0.30579 , Pearson Correlation: 0.81156 with p-value: 0.0 , Concordance Index: 0.87578\n",
      "Training at Epoch 63 iteration 0 with loss 0.23234. Total time 1.56027 hours\n",
      "Training at Epoch 63 iteration 100 with loss 0.20280. Total time 1.57472 hours\n",
      "Validation at Epoch 63 , MSE: 0.31288 , Pearson Correlation: 0.80557 with p-value: 0.0 , Concordance Index: 0.87220\n",
      "Training at Epoch 64 iteration 0 with loss 0.17156. Total time 1.58555 hours\n",
      "Training at Epoch 64 iteration 100 with loss 0.18048. Total time 1.59972 hours\n",
      "Validation at Epoch 64 , MSE: 0.29491 , Pearson Correlation: 0.81829 with p-value: 0.0 , Concordance Index: 0.87585\n",
      "Training at Epoch 65 iteration 0 with loss 0.25763. Total time 1.61055 hours\n",
      "Training at Epoch 65 iteration 100 with loss 0.16634. Total time 1.625 hours\n",
      "Validation at Epoch 65 , MSE: 0.26957 , Pearson Correlation: 0.82371 with p-value: 0.0 , Concordance Index: 0.88058\n",
      "Training at Epoch 66 iteration 0 with loss 0.27598. Total time 1.63583 hours\n",
      "Training at Epoch 66 iteration 100 with loss 0.18716. Total time 1.65027 hours\n",
      "Validation at Epoch 66 , MSE: 0.27349 , Pearson Correlation: 0.82143 with p-value: 0.0 , Concordance Index: 0.87753\n",
      "Training at Epoch 67 iteration 0 with loss 0.27504. Total time 1.66333 hours\n",
      "Training at Epoch 67 iteration 100 with loss 0.15336. Total time 1.6775 hours\n",
      "Validation at Epoch 67 , MSE: 0.27995 , Pearson Correlation: 0.81691 with p-value: 0.0 , Concordance Index: 0.88063\n",
      "Training at Epoch 68 iteration 0 with loss 0.17759. Total time 1.68861 hours\n",
      "Training at Epoch 68 iteration 100 with loss 0.18752. Total time 1.705 hours\n",
      "Validation at Epoch 68 , MSE: 0.29340 , Pearson Correlation: 0.81901 with p-value: 0.0 , Concordance Index: 0.87913\n",
      "Training at Epoch 69 iteration 0 with loss 0.13133. Total time 1.71916 hours\n",
      "Training at Epoch 69 iteration 100 with loss 0.21270. Total time 1.73694 hours\n",
      "Validation at Epoch 69 , MSE: 0.27341 , Pearson Correlation: 0.82528 with p-value: 0.0 , Concordance Index: 0.87956\n",
      "Training at Epoch 70 iteration 0 with loss 0.22273. Total time 1.74833 hours\n",
      "Training at Epoch 70 iteration 100 with loss 0.12961. Total time 1.7625 hours\n",
      "Validation at Epoch 70 , MSE: 0.33564 , Pearson Correlation: 0.80341 with p-value: 0.0 , Concordance Index: 0.87268\n",
      "Training at Epoch 71 iteration 0 with loss 0.34153. Total time 1.77333 hours\n",
      "Training at Epoch 71 iteration 100 with loss 0.19366. Total time 1.78777 hours\n",
      "Validation at Epoch 71 , MSE: 0.28546 , Pearson Correlation: 0.82403 with p-value: 0.0 , Concordance Index: 0.88266\n",
      "Training at Epoch 72 iteration 0 with loss 0.21745. Total time 1.79861 hours\n",
      "Training at Epoch 72 iteration 100 with loss 0.15563. Total time 1.81305 hours\n",
      "Validation at Epoch 72 , MSE: 0.28208 , Pearson Correlation: 0.81371 with p-value: 0.0 , Concordance Index: 0.87121\n",
      "Training at Epoch 73 iteration 0 with loss 0.18346. Total time 1.82388 hours\n",
      "Training at Epoch 73 iteration 100 with loss 0.14481. Total time 1.83861 hours\n",
      "Validation at Epoch 73 , MSE: 0.26510 , Pearson Correlation: 0.82628 with p-value: 0.0 , Concordance Index: 0.88137\n",
      "Training at Epoch 74 iteration 0 with loss 0.14660. Total time 1.84944 hours\n",
      "Training at Epoch 74 iteration 100 with loss 0.17781. Total time 1.86388 hours\n",
      "Validation at Epoch 74 , MSE: 0.28858 , Pearson Correlation: 0.82050 with p-value: 0.0 , Concordance Index: 0.88063\n",
      "Training at Epoch 75 iteration 0 with loss 0.20926. Total time 1.87472 hours\n",
      "Training at Epoch 75 iteration 100 with loss 0.12611. Total time 1.88916 hours\n",
      "Validation at Epoch 75 , MSE: 0.29682 , Pearson Correlation: 0.81318 with p-value: 0.0 , Concordance Index: 0.86899\n",
      "Training at Epoch 76 iteration 0 with loss 0.25774. Total time 1.9 hours\n",
      "Training at Epoch 76 iteration 100 with loss 0.12714. Total time 1.91444 hours\n",
      "Validation at Epoch 76 , MSE: 0.28499 , Pearson Correlation: 0.81529 with p-value: 0.0 , Concordance Index: 0.87395\n",
      "Training at Epoch 77 iteration 0 with loss 0.13874. Total time 1.92555 hours\n",
      "Training at Epoch 77 iteration 100 with loss 0.23976. Total time 1.93972 hours\n",
      "Validation at Epoch 77 , MSE: 0.26804 , Pearson Correlation: 0.82587 with p-value: 0.0 , Concordance Index: 0.87813\n",
      "Training at Epoch 78 iteration 0 with loss 0.14337. Total time 1.95083 hours\n",
      "Training at Epoch 78 iteration 100 with loss 0.15733. Total time 1.96527 hours\n",
      "Validation at Epoch 78 , MSE: 0.27795 , Pearson Correlation: 0.81980 with p-value: 0.0 , Concordance Index: 0.88119\n",
      "Training at Epoch 79 iteration 0 with loss 0.14483. Total time 1.97611 hours\n",
      "Training at Epoch 79 iteration 100 with loss 0.19212. Total time 1.99055 hours\n",
      "Validation at Epoch 79 , MSE: 0.26826 , Pearson Correlation: 0.82553 with p-value: 0.0 , Concordance Index: 0.87796\n",
      "Training at Epoch 80 iteration 0 with loss 0.17893. Total time 2.00138 hours\n",
      "Training at Epoch 80 iteration 100 with loss 0.16002. Total time 2.01583 hours\n",
      "Validation at Epoch 80 , MSE: 0.26380 , Pearson Correlation: 0.82727 with p-value: 0.0 , Concordance Index: 0.88336\n",
      "Training at Epoch 81 iteration 0 with loss 0.08267. Total time 2.02666 hours\n",
      "Training at Epoch 81 iteration 100 with loss 0.20423. Total time 2.04111 hours\n",
      "Validation at Epoch 81 , MSE: 0.27077 , Pearson Correlation: 0.82265 with p-value: 0.0 , Concordance Index: 0.88225\n",
      "Training at Epoch 82 iteration 0 with loss 0.08201. Total time 2.05194 hours\n",
      "Training at Epoch 82 iteration 100 with loss 0.17241. Total time 2.06638 hours\n",
      "Validation at Epoch 82 , MSE: 0.25706 , Pearson Correlation: 0.83142 with p-value: 0.0 , Concordance Index: 0.88067\n",
      "Training at Epoch 83 iteration 0 with loss 0.15649. Total time 2.07722 hours\n",
      "Training at Epoch 83 iteration 100 with loss 0.19606. Total time 2.09138 hours\n",
      "Validation at Epoch 83 , MSE: 0.27119 , Pearson Correlation: 0.82347 with p-value: 0.0 , Concordance Index: 0.87632\n",
      "Training at Epoch 84 iteration 0 with loss 0.13236. Total time 2.10222 hours\n",
      "Training at Epoch 84 iteration 100 with loss 0.21613. Total time 2.11666 hours\n",
      "Validation at Epoch 84 , MSE: 0.28332 , Pearson Correlation: 0.81861 with p-value: 0.0 , Concordance Index: 0.87415\n",
      "Training at Epoch 85 iteration 0 with loss 0.19114. Total time 2.1275 hours\n",
      "Training at Epoch 85 iteration 100 with loss 0.15262. Total time 2.14166 hours\n",
      "Validation at Epoch 85 , MSE: 0.29739 , Pearson Correlation: 0.82566 with p-value: 0.0 , Concordance Index: 0.88443\n",
      "Training at Epoch 86 iteration 0 with loss 0.10588. Total time 2.1525 hours\n",
      "Training at Epoch 86 iteration 100 with loss 0.07744. Total time 2.16694 hours\n",
      "Validation at Epoch 86 , MSE: 0.26843 , Pearson Correlation: 0.82276 with p-value: 0.0 , Concordance Index: 0.88505\n",
      "Training at Epoch 87 iteration 0 with loss 0.15571. Total time 2.17777 hours\n",
      "Training at Epoch 87 iteration 100 with loss 0.22784. Total time 2.19194 hours\n",
      "Validation at Epoch 87 , MSE: 0.30183 , Pearson Correlation: 0.82432 with p-value: 0.0 , Concordance Index: 0.87821\n",
      "Training at Epoch 88 iteration 0 with loss 0.12975. Total time 2.20277 hours\n",
      "Training at Epoch 88 iteration 100 with loss 0.18396. Total time 2.21722 hours\n",
      "Validation at Epoch 88 , MSE: 0.26689 , Pearson Correlation: 0.82566 with p-value: 0.0 , Concordance Index: 0.87315\n",
      "Training at Epoch 89 iteration 0 with loss 0.21021. Total time 2.22805 hours\n",
      "Training at Epoch 89 iteration 100 with loss 0.12805. Total time 2.24222 hours\n",
      "Validation at Epoch 89 , MSE: 0.26143 , Pearson Correlation: 0.82865 with p-value: 0.0 , Concordance Index: 0.88107\n",
      "Training at Epoch 90 iteration 0 with loss 0.14294. Total time 2.25305 hours\n",
      "Training at Epoch 90 iteration 100 with loss 0.11843. Total time 2.2675 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validation at Epoch 90 , MSE: 0.26278 , Pearson Correlation: 0.82731 with p-value: 0.0 , Concordance Index: 0.88444\n",
      "Training at Epoch 91 iteration 0 with loss 0.14211. Total time 2.27833 hours\n",
      "Training at Epoch 91 iteration 100 with loss 0.14590. Total time 2.2925 hours\n",
      "Validation at Epoch 91 , MSE: 0.26202 , Pearson Correlation: 0.82778 with p-value: 0.0 , Concordance Index: 0.88514\n",
      "Training at Epoch 92 iteration 0 with loss 0.20349. Total time 2.30333 hours\n",
      "Training at Epoch 92 iteration 100 with loss 0.22187. Total time 2.31777 hours\n",
      "Validation at Epoch 92 , MSE: 0.27360 , Pearson Correlation: 0.82248 with p-value: 0.0 , Concordance Index: 0.87669\n",
      "Training at Epoch 93 iteration 0 with loss 0.12526. Total time 2.32861 hours\n",
      "Training at Epoch 93 iteration 100 with loss 0.12340. Total time 2.34305 hours\n",
      "Validation at Epoch 93 , MSE: 0.27401 , Pearson Correlation: 0.82347 with p-value: 0.0 , Concordance Index: 0.87922\n",
      "Training at Epoch 94 iteration 0 with loss 0.12359. Total time 2.35388 hours\n",
      "Training at Epoch 94 iteration 100 with loss 0.20481. Total time 2.36805 hours\n",
      "Validation at Epoch 94 , MSE: 0.26883 , Pearson Correlation: 0.82668 with p-value: 0.0 , Concordance Index: 0.87826\n",
      "Training at Epoch 95 iteration 0 with loss 0.11206. Total time 2.37888 hours\n",
      "Training at Epoch 95 iteration 100 with loss 0.15848. Total time 2.39333 hours\n",
      "Validation at Epoch 95 , MSE: 0.29378 , Pearson Correlation: 0.82472 with p-value: 0.0 , Concordance Index: 0.88105\n",
      "Training at Epoch 96 iteration 0 with loss 0.16159. Total time 2.40416 hours\n",
      "Training at Epoch 96 iteration 100 with loss 0.11864. Total time 2.41833 hours\n",
      "Validation at Epoch 96 , MSE: 0.26645 , Pearson Correlation: 0.82800 with p-value: 0.0 , Concordance Index: 0.87870\n",
      "Training at Epoch 97 iteration 0 with loss 0.18252. Total time 2.42916 hours\n",
      "Training at Epoch 97 iteration 100 with loss 0.07719. Total time 2.44361 hours\n",
      "Validation at Epoch 97 , MSE: 0.26912 , Pearson Correlation: 0.82720 with p-value: 0.0 , Concordance Index: 0.88558\n",
      "Training at Epoch 98 iteration 0 with loss 0.08614. Total time 2.45444 hours\n",
      "Training at Epoch 98 iteration 100 with loss 0.14923. Total time 2.46888 hours\n",
      "Validation at Epoch 98 , MSE: 0.27389 , Pearson Correlation: 0.82017 with p-value: 0.0 , Concordance Index: 0.87802\n",
      "Training at Epoch 99 iteration 0 with loss 0.12668. Total time 2.47972 hours\n",
      "Training at Epoch 99 iteration 100 with loss 0.14108. Total time 2.49388 hours\n",
      "Validation at Epoch 99 , MSE: 0.26955 , Pearson Correlation: 0.82661 with p-value: 0.0 , Concordance Index: 0.88759\n",
      "Training at Epoch 100 iteration 0 with loss 0.08816. Total time 2.50472 hours\n",
      "Training at Epoch 100 iteration 100 with loss 0.16350. Total time 2.51916 hours\n",
      "Validation at Epoch 100 , MSE: 0.26409 , Pearson Correlation: 0.82935 with p-value: 0.0 , Concordance Index: 0.88296\n",
      "--- Go for Testing ---\n",
      "Testing MSE: 0.2864501079402256 , Pearson Correlation: 0.8045567463540523 with p-value: 0.0 , Concordance Index: 0.8488093001303374\n",
      "--- Training Finished ---\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import os\n",
    "os.chdir('../../')\n",
    "import DeepPurpose.models as models\n",
    "from DeepPurpose.utils import *\n",
    "from DeepPurpose.dataset import *\n",
    "from time import time\n",
    "\n",
    "t1 = time()\n",
    "X_drug, X_target, y = load_process_DAVIS('./data/', binary=False)\n",
    "\n",
    "drug_encoding = 'CNN'\n",
    "target_encoding = 'Transformer'\n",
    "train, val, test = data_process(X_drug, X_target, y, \n",
    "                                drug_encoding, target_encoding, \n",
    "                                split_method='random',frac=[0.7,0.1,0.2], random_seed = 2)\n",
    "\n",
    "# use the parameters setting provided in the paper: https://arxiv.org/abs/1801.10193\n",
    "config = generate_config(drug_encoding = drug_encoding, \n",
    "                         target_encoding = target_encoding, \n",
    "                         cls_hidden_dims = [1024,1024,512], \n",
    "                         train_epoch = 100, \n",
    "                         test_every_X_epoch = 100, \n",
    "                         LR = 0.001, \n",
    "                         batch_size = 128,\n",
    "                         hidden_dim_drug = 128,\n",
    "                         cnn_drug_filters = [32,64,96],\n",
    "                         cnn_drug_kernels = [4,8,12],\n",
    "                         transformer_n_layer_target = 2\n",
    "                        )\n",
    "model = models.model_initialize(**config)\n",
    "t2 = time()\n",
    "print(\"cost about \" + str(int(t2-t1)) + \" seconds\")\n",
    "model.train(train, val, test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.save_model('./model_CNN_Transformer_Davis')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "in total: 30056 drug-target pairs\n",
      "encoding drug...\n",
      "unique drugs: 68\n",
      "drug encoding finished...\n",
      "encoding protein...\n",
      "unique target sequence: 379\n",
      "protein encoding finished...\n",
      "splitting dataset...\n",
      "Done.\n",
      "cost about 9147 seconds\n",
      "Let's use 1 GPU!\n",
      "--- Data Preparation ---\n",
      "--- Go for Training ---\n",
      "Training at Epoch 1 iteration 0 with loss 31.0146. Total time 0.0 hours\n",
      "Training at Epoch 1 iteration 100 with loss 0.87778. Total time 0.01444 hours\n",
      "Validation at Epoch 1 , MSE: 0.69467 , Pearson Correlation: 0.37552 with p-value: 2.70630 , Concordance Index: 0.68522\n",
      "Training at Epoch 2 iteration 0 with loss 0.68656. Total time 0.02527 hours\n",
      "Training at Epoch 2 iteration 100 with loss 0.69527. Total time 0.03944 hours\n",
      "Validation at Epoch 2 , MSE: 0.57466 , Pearson Correlation: 0.52642 with p-value: 5.67938 , Concordance Index: 0.77001\n",
      "Training at Epoch 3 iteration 0 with loss 0.63962. Total time 0.05055 hours\n",
      "Training at Epoch 3 iteration 100 with loss 1.10363. Total time 0.06472 hours\n",
      "Validation at Epoch 3 , MSE: 0.55241 , Pearson Correlation: 0.57021 with p-value: 7.67736 , Concordance Index: 0.77864\n",
      "Training at Epoch 4 iteration 0 with loss 0.50001. Total time 0.07555 hours\n",
      "Training at Epoch 4 iteration 100 with loss 0.72907. Total time 0.09 hours\n",
      "Validation at Epoch 4 , MSE: 0.54403 , Pearson Correlation: 0.60068 with p-value: 2.69829 , Concordance Index: 0.77834\n",
      "Training at Epoch 5 iteration 0 with loss 0.49304. Total time 0.10083 hours\n",
      "Training at Epoch 5 iteration 100 with loss 0.63178. Total time 0.11527 hours\n",
      "Validation at Epoch 5 , MSE: 0.46944 , Pearson Correlation: 0.63568 with p-value: 0.0 , Concordance Index: 0.82026\n",
      "Training at Epoch 6 iteration 0 with loss 0.43165. Total time 0.12611 hours\n",
      "Training at Epoch 6 iteration 100 with loss 0.56171. Total time 0.14055 hours\n",
      "Validation at Epoch 6 , MSE: 0.56180 , Pearson Correlation: 0.64107 with p-value: 0.0 , Concordance Index: 0.81648\n",
      "Training at Epoch 7 iteration 0 with loss 0.41816. Total time 0.15138 hours\n",
      "Training at Epoch 7 iteration 100 with loss 0.37472. Total time 0.16583 hours\n",
      "Validation at Epoch 7 , MSE: 0.48447 , Pearson Correlation: 0.64883 with p-value: 0.0 , Concordance Index: 0.82122\n",
      "Training at Epoch 8 iteration 0 with loss 0.55142. Total time 0.17666 hours\n",
      "Training at Epoch 8 iteration 100 with loss 0.47256. Total time 0.19083 hours\n",
      "Validation at Epoch 8 , MSE: 0.44665 , Pearson Correlation: 0.65825 with p-value: 0.0 , Concordance Index: 0.82278\n",
      "Training at Epoch 9 iteration 0 with loss 0.61169. Total time 0.20194 hours\n",
      "Training at Epoch 9 iteration 100 with loss 0.30360. Total time 0.21611 hours\n",
      "Validation at Epoch 9 , MSE: 0.47828 , Pearson Correlation: 0.66024 with p-value: 0.0 , Concordance Index: 0.81992\n",
      "Training at Epoch 10 iteration 0 with loss 0.47820. Total time 0.22694 hours\n",
      "Training at Epoch 10 iteration 100 with loss 0.67239. Total time 0.24138 hours\n",
      "Validation at Epoch 10 , MSE: 0.48159 , Pearson Correlation: 0.68362 with p-value: 0.0 , Concordance Index: 0.82303\n",
      "Training at Epoch 11 iteration 0 with loss 0.41511. Total time 0.25222 hours\n",
      "Training at Epoch 11 iteration 100 with loss 0.43175. Total time 0.26666 hours\n",
      "Validation at Epoch 11 , MSE: 0.50684 , Pearson Correlation: 0.68128 with p-value: 0.0 , Concordance Index: 0.81923\n",
      "Training at Epoch 12 iteration 0 with loss 0.74662. Total time 0.2775 hours\n",
      "Training at Epoch 12 iteration 100 with loss 0.40248. Total time 0.29194 hours\n",
      "Validation at Epoch 12 , MSE: 0.41010 , Pearson Correlation: 0.70117 with p-value: 0.0 , Concordance Index: 0.82820\n",
      "Training at Epoch 13 iteration 0 with loss 0.53975. Total time 0.30277 hours\n",
      "Training at Epoch 13 iteration 100 with loss 0.52371. Total time 0.31722 hours\n",
      "Validation at Epoch 13 , MSE: 0.48410 , Pearson Correlation: 0.72402 with p-value: 0.0 , Concordance Index: 0.83830\n",
      "Training at Epoch 14 iteration 0 with loss 0.51506. Total time 0.32805 hours\n",
      "Training at Epoch 14 iteration 100 with loss 0.54258. Total time 0.34222 hours\n",
      "Validation at Epoch 14 , MSE: 0.42213 , Pearson Correlation: 0.72324 with p-value: 0.0 , Concordance Index: 0.83749\n",
      "Training at Epoch 15 iteration 0 with loss 0.46170. Total time 0.35333 hours\n",
      "Training at Epoch 15 iteration 100 with loss 0.37688. Total time 0.3675 hours\n",
      "Validation at Epoch 15 , MSE: 0.36027 , Pearson Correlation: 0.73511 with p-value: 0.0 , Concordance Index: 0.83836\n",
      "Training at Epoch 16 iteration 0 with loss 0.36589. Total time 0.37833 hours\n",
      "Training at Epoch 16 iteration 100 with loss 0.74389. Total time 0.39277 hours\n",
      "Validation at Epoch 16 , MSE: 0.39352 , Pearson Correlation: 0.75465 with p-value: 0.0 , Concordance Index: 0.84697\n",
      "Training at Epoch 17 iteration 0 with loss 0.46468. Total time 0.40361 hours\n",
      "Training at Epoch 17 iteration 100 with loss 0.21148. Total time 0.41805 hours\n",
      "Validation at Epoch 17 , MSE: 0.34434 , Pearson Correlation: 0.76117 with p-value: 0.0 , Concordance Index: 0.84992\n",
      "Training at Epoch 18 iteration 0 with loss 0.75203. Total time 0.42888 hours\n",
      "Training at Epoch 18 iteration 100 with loss 0.40715. Total time 0.44333 hours\n",
      "Validation at Epoch 18 , MSE: 0.33007 , Pearson Correlation: 0.76586 with p-value: 0.0 , Concordance Index: 0.85281\n",
      "Training at Epoch 19 iteration 0 with loss 0.21462. Total time 0.45416 hours\n",
      "Training at Epoch 19 iteration 100 with loss 0.29926. Total time 0.46861 hours\n",
      "Validation at Epoch 19 , MSE: 0.49924 , Pearson Correlation: 0.74160 with p-value: 0.0 , Concordance Index: 0.83430\n",
      "Training at Epoch 20 iteration 0 with loss 0.42842. Total time 0.47944 hours\n",
      "Training at Epoch 20 iteration 100 with loss 0.30070. Total time 0.49388 hours\n",
      "Validation at Epoch 20 , MSE: 0.40551 , Pearson Correlation: 0.75889 with p-value: 0.0 , Concordance Index: 0.84731\n",
      "Training at Epoch 21 iteration 0 with loss 0.45852. Total time 0.50472 hours\n",
      "Training at Epoch 21 iteration 100 with loss 0.49385. Total time 0.51916 hours\n",
      "Validation at Epoch 21 , MSE: 0.33404 , Pearson Correlation: 0.76521 with p-value: 0.0 , Concordance Index: 0.85147\n",
      "Training at Epoch 22 iteration 0 with loss 0.34369. Total time 0.53027 hours\n",
      "Training at Epoch 22 iteration 100 with loss 0.31143. Total time 0.54472 hours\n",
      "Validation at Epoch 22 , MSE: 0.31729 , Pearson Correlation: 0.78009 with p-value: 0.0 , Concordance Index: 0.85473\n",
      "Training at Epoch 23 iteration 0 with loss 0.28754. Total time 0.55555 hours\n",
      "Training at Epoch 23 iteration 100 with loss 0.32744. Total time 0.57 hours\n",
      "Validation at Epoch 23 , MSE: 0.35796 , Pearson Correlation: 0.76709 with p-value: 0.0 , Concordance Index: 0.84739\n",
      "Training at Epoch 24 iteration 0 with loss 0.61301. Total time 0.58111 hours\n",
      "Training at Epoch 24 iteration 100 with loss 0.33747. Total time 0.59555 hours\n",
      "Validation at Epoch 24 , MSE: 0.42423 , Pearson Correlation: 0.76462 with p-value: 0.0 , Concordance Index: 0.85031\n",
      "Training at Epoch 25 iteration 0 with loss 0.43672. Total time 0.60666 hours\n",
      "Training at Epoch 25 iteration 100 with loss 0.27997. Total time 0.62111 hours\n",
      "Validation at Epoch 25 , MSE: 0.50395 , Pearson Correlation: 0.77336 with p-value: 0.0 , Concordance Index: 0.85126\n",
      "Training at Epoch 26 iteration 0 with loss 0.42970. Total time 0.63194 hours\n",
      "Training at Epoch 26 iteration 100 with loss 0.50776. Total time 0.64638 hours\n",
      "Validation at Epoch 26 , MSE: 0.31237 , Pearson Correlation: 0.78327 with p-value: 0.0 , Concordance Index: 0.86423\n",
      "Training at Epoch 27 iteration 0 with loss 0.27310. Total time 0.6575 hours\n",
      "Training at Epoch 27 iteration 100 with loss 0.30323. Total time 0.67194 hours\n",
      "Validation at Epoch 27 , MSE: 0.30258 , Pearson Correlation: 0.78398 with p-value: 0.0 , Concordance Index: 0.85684\n",
      "Training at Epoch 28 iteration 0 with loss 0.37856. Total time 0.68305 hours\n",
      "Training at Epoch 28 iteration 100 with loss 0.26127. Total time 0.6975 hours\n",
      "Validation at Epoch 28 , MSE: 0.39378 , Pearson Correlation: 0.78068 with p-value: 0.0 , Concordance Index: 0.85885\n",
      "Training at Epoch 29 iteration 0 with loss 0.49659. Total time 0.70833 hours\n",
      "Training at Epoch 29 iteration 100 with loss 0.26281. Total time 0.72305 hours\n",
      "Validation at Epoch 29 , MSE: 0.31709 , Pearson Correlation: 0.78123 with p-value: 0.0 , Concordance Index: 0.85722\n",
      "Training at Epoch 30 iteration 0 with loss 0.31357. Total time 0.73388 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 30 iteration 100 with loss 0.50409. Total time 0.74833 hours\n",
      "Validation at Epoch 30 , MSE: 0.30494 , Pearson Correlation: 0.78462 with p-value: 0.0 , Concordance Index: 0.86233\n",
      "Training at Epoch 31 iteration 0 with loss 0.28707. Total time 0.75944 hours\n",
      "Training at Epoch 31 iteration 100 with loss 0.38955. Total time 0.77388 hours\n",
      "Validation at Epoch 31 , MSE: 0.42359 , Pearson Correlation: 0.77760 with p-value: 0.0 , Concordance Index: 0.86579\n",
      "Training at Epoch 32 iteration 0 with loss 0.35945. Total time 0.785 hours\n",
      "Training at Epoch 32 iteration 100 with loss 0.26258. Total time 0.79944 hours\n",
      "Validation at Epoch 32 , MSE: 0.31790 , Pearson Correlation: 0.78938 with p-value: 0.0 , Concordance Index: 0.86451\n",
      "Training at Epoch 33 iteration 0 with loss 0.47869. Total time 0.81055 hours\n",
      "Training at Epoch 33 iteration 100 with loss 0.25339. Total time 0.825 hours\n",
      "Validation at Epoch 33 , MSE: 0.38281 , Pearson Correlation: 0.78687 with p-value: 0.0 , Concordance Index: 0.86793\n",
      "Training at Epoch 34 iteration 0 with loss 0.42262. Total time 0.83611 hours\n",
      "Training at Epoch 34 iteration 100 with loss 0.22263. Total time 0.85055 hours\n",
      "Validation at Epoch 34 , MSE: 0.32596 , Pearson Correlation: 0.76913 with p-value: 0.0 , Concordance Index: 0.84708\n",
      "Training at Epoch 35 iteration 0 with loss 0.20543. Total time 0.86166 hours\n",
      "Training at Epoch 35 iteration 100 with loss 0.21676. Total time 0.87611 hours\n",
      "Validation at Epoch 35 , MSE: 0.28396 , Pearson Correlation: 0.80014 with p-value: 0.0 , Concordance Index: 0.87317\n",
      "Training at Epoch 36 iteration 0 with loss 0.22735. Total time 0.88722 hours\n",
      "Training at Epoch 36 iteration 100 with loss 0.42572. Total time 0.90166 hours\n",
      "Validation at Epoch 36 , MSE: 0.28903 , Pearson Correlation: 0.79751 with p-value: 0.0 , Concordance Index: 0.86796\n",
      "Training at Epoch 37 iteration 0 with loss 0.30645. Total time 0.91277 hours\n",
      "Training at Epoch 37 iteration 100 with loss 0.51900. Total time 0.92722 hours\n",
      "Validation at Epoch 37 , MSE: 0.30005 , Pearson Correlation: 0.79458 with p-value: 0.0 , Concordance Index: 0.86157\n",
      "Training at Epoch 38 iteration 0 with loss 0.14931. Total time 0.93833 hours\n",
      "Training at Epoch 38 iteration 100 with loss 0.37107. Total time 0.95277 hours\n",
      "Validation at Epoch 38 , MSE: 0.37257 , Pearson Correlation: 0.78456 with p-value: 0.0 , Concordance Index: 0.85274\n",
      "Training at Epoch 39 iteration 0 with loss 0.37353. Total time 0.96388 hours\n",
      "Training at Epoch 39 iteration 100 with loss 0.28837. Total time 0.97833 hours\n",
      "Validation at Epoch 39 , MSE: 0.29689 , Pearson Correlation: 0.80966 with p-value: 0.0 , Concordance Index: 0.87412\n",
      "Training at Epoch 40 iteration 0 with loss 0.19109. Total time 0.98944 hours\n",
      "Training at Epoch 40 iteration 100 with loss 0.36974. Total time 1.00388 hours\n",
      "Validation at Epoch 40 , MSE: 0.28558 , Pearson Correlation: 0.80418 with p-value: 0.0 , Concordance Index: 0.87472\n",
      "Training at Epoch 41 iteration 0 with loss 0.39654. Total time 1.015 hours\n",
      "Training at Epoch 41 iteration 100 with loss 0.26425. Total time 1.02944 hours\n",
      "Validation at Epoch 41 , MSE: 0.31840 , Pearson Correlation: 0.77577 with p-value: 0.0 , Concordance Index: 0.84245\n",
      "Training at Epoch 42 iteration 0 with loss 0.30263. Total time 1.04055 hours\n",
      "Training at Epoch 42 iteration 100 with loss 0.35967. Total time 1.055 hours\n",
      "Validation at Epoch 42 , MSE: 0.31760 , Pearson Correlation: 0.80650 with p-value: 0.0 , Concordance Index: 0.87178\n",
      "Training at Epoch 43 iteration 0 with loss 0.34270. Total time 1.06611 hours\n",
      "Training at Epoch 43 iteration 100 with loss 0.34750. Total time 1.08055 hours\n",
      "Validation at Epoch 43 , MSE: 0.28993 , Pearson Correlation: 0.80414 with p-value: 0.0 , Concordance Index: 0.86754\n",
      "Training at Epoch 44 iteration 0 with loss 0.33828. Total time 1.09166 hours\n",
      "Training at Epoch 44 iteration 100 with loss 0.26628. Total time 1.10611 hours\n",
      "Validation at Epoch 44 , MSE: 0.29839 , Pearson Correlation: 0.79991 with p-value: 0.0 , Concordance Index: 0.86113\n",
      "Training at Epoch 45 iteration 0 with loss 0.21811. Total time 1.11722 hours\n",
      "Training at Epoch 45 iteration 100 with loss 0.32197. Total time 1.13166 hours\n",
      "Validation at Epoch 45 , MSE: 0.29458 , Pearson Correlation: 0.80870 with p-value: 0.0 , Concordance Index: 0.87542\n",
      "Training at Epoch 46 iteration 0 with loss 0.23440. Total time 1.1425 hours\n",
      "Training at Epoch 46 iteration 100 with loss 0.20589. Total time 1.15722 hours\n",
      "Validation at Epoch 46 , MSE: 0.30686 , Pearson Correlation: 0.80116 with p-value: 0.0 , Concordance Index: 0.87218\n",
      "Training at Epoch 47 iteration 0 with loss 0.47619. Total time 1.16805 hours\n",
      "Training at Epoch 47 iteration 100 with loss 0.19892. Total time 1.18277 hours\n",
      "Validation at Epoch 47 , MSE: 0.30148 , Pearson Correlation: 0.81017 with p-value: 0.0 , Concordance Index: 0.86980\n",
      "Training at Epoch 48 iteration 0 with loss 0.19444. Total time 1.19361 hours\n",
      "Training at Epoch 48 iteration 100 with loss 0.25598. Total time 1.20833 hours\n",
      "Validation at Epoch 48 , MSE: 0.29415 , Pearson Correlation: 0.80742 with p-value: 0.0 , Concordance Index: 0.87111\n",
      "Training at Epoch 49 iteration 0 with loss 0.38557. Total time 1.21916 hours\n",
      "Training at Epoch 49 iteration 100 with loss 0.26742. Total time 1.23388 hours\n",
      "Validation at Epoch 49 , MSE: 0.27498 , Pearson Correlation: 0.80578 with p-value: 0.0 , Concordance Index: 0.86705\n",
      "Training at Epoch 50 iteration 0 with loss 0.26260. Total time 1.24472 hours\n",
      "Training at Epoch 50 iteration 100 with loss 0.45253. Total time 1.25916 hours\n",
      "Validation at Epoch 50 , MSE: 0.29084 , Pearson Correlation: 0.80310 with p-value: 0.0 , Concordance Index: 0.86180\n",
      "Training at Epoch 51 iteration 0 with loss 0.34398. Total time 1.27027 hours\n",
      "Training at Epoch 51 iteration 100 with loss 0.29071. Total time 1.28472 hours\n",
      "Validation at Epoch 51 , MSE: 0.28344 , Pearson Correlation: 0.81389 with p-value: 0.0 , Concordance Index: 0.87294\n",
      "Training at Epoch 52 iteration 0 with loss 0.16804. Total time 1.29555 hours\n",
      "Training at Epoch 52 iteration 100 with loss 0.30195. Total time 1.31 hours\n",
      "Validation at Epoch 52 , MSE: 0.28701 , Pearson Correlation: 0.80664 with p-value: 0.0 , Concordance Index: 0.87265\n",
      "Training at Epoch 53 iteration 0 with loss 0.18437. Total time 1.32083 hours\n",
      "Training at Epoch 53 iteration 100 with loss 0.28813. Total time 1.33527 hours\n",
      "Validation at Epoch 53 , MSE: 0.36664 , Pearson Correlation: 0.80471 with p-value: 0.0 , Concordance Index: 0.87120\n",
      "Training at Epoch 54 iteration 0 with loss 0.25669. Total time 1.34638 hours\n",
      "Training at Epoch 54 iteration 100 with loss 0.20953. Total time 1.36083 hours\n",
      "Validation at Epoch 54 , MSE: 0.27158 , Pearson Correlation: 0.81536 with p-value: 0.0 , Concordance Index: 0.87013\n",
      "Training at Epoch 55 iteration 0 with loss 0.29206. Total time 1.37166 hours\n",
      "Training at Epoch 55 iteration 100 with loss 0.23674. Total time 1.38611 hours\n",
      "Validation at Epoch 55 , MSE: 0.27376 , Pearson Correlation: 0.81209 with p-value: 0.0 , Concordance Index: 0.87034\n",
      "Training at Epoch 56 iteration 0 with loss 0.23519. Total time 1.39694 hours\n",
      "Training at Epoch 56 iteration 100 with loss 0.24922. Total time 1.41138 hours\n",
      "Validation at Epoch 56 , MSE: 0.25308 , Pearson Correlation: 0.82341 with p-value: 0.0 , Concordance Index: 0.87442\n",
      "Training at Epoch 57 iteration 0 with loss 0.29055. Total time 1.4225 hours\n",
      "Training at Epoch 57 iteration 100 with loss 0.15773. Total time 1.43694 hours\n",
      "Validation at Epoch 57 , MSE: 0.28971 , Pearson Correlation: 0.79635 with p-value: 0.0 , Concordance Index: 0.86961\n",
      "Training at Epoch 58 iteration 0 with loss 0.30279. Total time 1.44777 hours\n",
      "Training at Epoch 58 iteration 100 with loss 0.25704. Total time 1.46222 hours\n",
      "Validation at Epoch 58 , MSE: 0.28891 , Pearson Correlation: 0.81463 with p-value: 0.0 , Concordance Index: 0.88017\n",
      "Training at Epoch 59 iteration 0 with loss 0.21758. Total time 1.47333 hours\n",
      "Training at Epoch 59 iteration 100 with loss 0.18433. Total time 1.48777 hours\n",
      "Validation at Epoch 59 , MSE: 0.27088 , Pearson Correlation: 0.82416 with p-value: 0.0 , Concordance Index: 0.88038\n",
      "Training at Epoch 60 iteration 0 with loss 0.12698. Total time 1.49861 hours\n",
      "Training at Epoch 60 iteration 100 with loss 0.30988. Total time 1.51305 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validation at Epoch 60 , MSE: 0.28504 , Pearson Correlation: 0.80093 with p-value: 0.0 , Concordance Index: 0.86625\n",
      "Training at Epoch 61 iteration 0 with loss 0.21000. Total time 1.52388 hours\n",
      "Training at Epoch 61 iteration 100 with loss 0.18767. Total time 1.53833 hours\n",
      "Validation at Epoch 61 , MSE: 0.25040 , Pearson Correlation: 0.82853 with p-value: 0.0 , Concordance Index: 0.88402\n",
      "Training at Epoch 62 iteration 0 with loss 0.20904. Total time 1.54944 hours\n",
      "Training at Epoch 62 iteration 100 with loss 0.17405. Total time 1.56388 hours\n",
      "Validation at Epoch 62 , MSE: 0.28957 , Pearson Correlation: 0.80971 with p-value: 0.0 , Concordance Index: 0.86795\n",
      "Training at Epoch 63 iteration 0 with loss 0.16790. Total time 1.57472 hours\n",
      "Training at Epoch 63 iteration 100 with loss 0.20548. Total time 1.58916 hours\n",
      "Validation at Epoch 63 , MSE: 0.26376 , Pearson Correlation: 0.82442 with p-value: 0.0 , Concordance Index: 0.88260\n",
      "Training at Epoch 64 iteration 0 with loss 0.17222. Total time 1.6 hours\n",
      "Training at Epoch 64 iteration 100 with loss 0.25222. Total time 1.61444 hours\n",
      "Validation at Epoch 64 , MSE: 0.26064 , Pearson Correlation: 0.82336 with p-value: 0.0 , Concordance Index: 0.87709\n",
      "Training at Epoch 65 iteration 0 with loss 0.15610. Total time 1.62555 hours\n",
      "Training at Epoch 65 iteration 100 with loss 0.23505. Total time 1.64 hours\n",
      "Validation at Epoch 65 , MSE: 0.30980 , Pearson Correlation: 0.82067 with p-value: 0.0 , Concordance Index: 0.86944\n",
      "Training at Epoch 66 iteration 0 with loss 0.27629. Total time 1.65083 hours\n",
      "Training at Epoch 66 iteration 100 with loss 0.12191. Total time 1.66527 hours\n",
      "Validation at Epoch 66 , MSE: 0.26986 , Pearson Correlation: 0.81501 with p-value: 0.0 , Concordance Index: 0.87180\n",
      "Training at Epoch 67 iteration 0 with loss 0.23533. Total time 1.67611 hours\n",
      "Training at Epoch 67 iteration 100 with loss 0.15142. Total time 1.69055 hours\n",
      "Validation at Epoch 67 , MSE: 0.26770 , Pearson Correlation: 0.81170 with p-value: 0.0 , Concordance Index: 0.86875\n",
      "Training at Epoch 68 iteration 0 with loss 0.13198. Total time 1.70166 hours\n",
      "Training at Epoch 68 iteration 100 with loss 0.20411. Total time 1.71611 hours\n",
      "Validation at Epoch 68 , MSE: 0.26242 , Pearson Correlation: 0.81627 with p-value: 0.0 , Concordance Index: 0.87053\n",
      "Training at Epoch 69 iteration 0 with loss 0.12727. Total time 1.72694 hours\n",
      "Training at Epoch 69 iteration 100 with loss 0.20983. Total time 1.74138 hours\n",
      "Validation at Epoch 69 , MSE: 0.26581 , Pearson Correlation: 0.82101 with p-value: 0.0 , Concordance Index: 0.87380\n",
      "Training at Epoch 70 iteration 0 with loss 0.32210. Total time 1.7525 hours\n",
      "Training at Epoch 70 iteration 100 with loss 0.19545. Total time 1.76694 hours\n",
      "Validation at Epoch 70 , MSE: 0.25751 , Pearson Correlation: 0.82696 with p-value: 0.0 , Concordance Index: 0.88410\n",
      "Training at Epoch 71 iteration 0 with loss 0.13451. Total time 1.77777 hours\n",
      "Training at Epoch 71 iteration 100 with loss 0.20153. Total time 1.79222 hours\n",
      "Validation at Epoch 71 , MSE: 0.27844 , Pearson Correlation: 0.82206 with p-value: 0.0 , Concordance Index: 0.88547\n",
      "Training at Epoch 72 iteration 0 with loss 0.16505. Total time 1.80305 hours\n",
      "Training at Epoch 72 iteration 100 with loss 0.18244. Total time 1.8175 hours\n",
      "Validation at Epoch 72 , MSE: 0.25174 , Pearson Correlation: 0.82885 with p-value: 0.0 , Concordance Index: 0.88596\n",
      "Training at Epoch 73 iteration 0 with loss 0.09298. Total time 1.82861 hours\n",
      "Training at Epoch 73 iteration 100 with loss 0.21554. Total time 1.84305 hours\n",
      "Validation at Epoch 73 , MSE: 0.24048 , Pearson Correlation: 0.83532 with p-value: 0.0 , Concordance Index: 0.88769\n",
      "Training at Epoch 74 iteration 0 with loss 0.17782. Total time 1.85388 hours\n",
      "Training at Epoch 74 iteration 100 with loss 0.24354. Total time 1.86833 hours\n",
      "Validation at Epoch 74 , MSE: 0.32200 , Pearson Correlation: 0.82072 with p-value: 0.0 , Concordance Index: 0.87426\n",
      "Training at Epoch 75 iteration 0 with loss 0.29864. Total time 1.87916 hours\n",
      "Training at Epoch 75 iteration 100 with loss 0.18964. Total time 1.89361 hours\n",
      "Validation at Epoch 75 , MSE: 0.24633 , Pearson Correlation: 0.82840 with p-value: 0.0 , Concordance Index: 0.87667\n",
      "Training at Epoch 76 iteration 0 with loss 0.13828. Total time 1.90472 hours\n",
      "Training at Epoch 76 iteration 100 with loss 0.16823. Total time 1.91916 hours\n",
      "Validation at Epoch 76 , MSE: 0.24220 , Pearson Correlation: 0.83538 with p-value: 0.0 , Concordance Index: 0.87678\n",
      "Training at Epoch 77 iteration 0 with loss 0.17214. Total time 1.93 hours\n",
      "Training at Epoch 77 iteration 100 with loss 0.11998. Total time 1.94444 hours\n",
      "Validation at Epoch 77 , MSE: 0.23640 , Pearson Correlation: 0.84106 with p-value: 0.0 , Concordance Index: 0.88747\n",
      "Training at Epoch 78 iteration 0 with loss 0.11371. Total time 1.95555 hours\n",
      "Training at Epoch 78 iteration 100 with loss 0.15051. Total time 1.97 hours\n",
      "Validation at Epoch 78 , MSE: 0.25457 , Pearson Correlation: 0.82293 with p-value: 0.0 , Concordance Index: 0.87740\n",
      "Training at Epoch 79 iteration 0 with loss 0.13879. Total time 1.98083 hours\n",
      "Training at Epoch 79 iteration 100 with loss 0.18775. Total time 1.99527 hours\n",
      "Validation at Epoch 79 , MSE: 0.25506 , Pearson Correlation: 0.83468 with p-value: 0.0 , Concordance Index: 0.88351\n",
      "Training at Epoch 80 iteration 0 with loss 0.14627. Total time 2.00611 hours\n",
      "Training at Epoch 80 iteration 100 with loss 0.15120. Total time 2.02055 hours\n",
      "Validation at Epoch 80 , MSE: 0.25558 , Pearson Correlation: 0.83138 with p-value: 0.0 , Concordance Index: 0.88404\n",
      "Training at Epoch 81 iteration 0 with loss 0.12146. Total time 2.03166 hours\n",
      "Training at Epoch 81 iteration 100 with loss 0.11763. Total time 2.04611 hours\n",
      "Validation at Epoch 81 , MSE: 0.24461 , Pearson Correlation: 0.83542 with p-value: 0.0 , Concordance Index: 0.88691\n",
      "Training at Epoch 82 iteration 0 with loss 0.16627. Total time 2.05694 hours\n",
      "Training at Epoch 82 iteration 100 with loss 0.15482. Total time 2.07138 hours\n",
      "Validation at Epoch 82 , MSE: 0.23908 , Pearson Correlation: 0.84256 with p-value: 0.0 , Concordance Index: 0.88641\n",
      "Training at Epoch 83 iteration 0 with loss 0.13840. Total time 2.08222 hours\n",
      "Training at Epoch 83 iteration 100 with loss 0.19062. Total time 2.09666 hours\n",
      "Validation at Epoch 83 , MSE: 0.25606 , Pearson Correlation: 0.83097 with p-value: 0.0 , Concordance Index: 0.88558\n",
      "Training at Epoch 84 iteration 0 with loss 0.12803. Total time 2.10777 hours\n",
      "Training at Epoch 84 iteration 100 with loss 0.17304. Total time 2.12222 hours\n",
      "Validation at Epoch 84 , MSE: 0.25854 , Pearson Correlation: 0.83575 with p-value: 0.0 , Concordance Index: 0.88730\n",
      "Training at Epoch 85 iteration 0 with loss 0.16952. Total time 2.13305 hours\n",
      "Training at Epoch 85 iteration 100 with loss 0.21403. Total time 2.1475 hours\n",
      "Validation at Epoch 85 , MSE: 0.24558 , Pearson Correlation: 0.83244 with p-value: 0.0 , Concordance Index: 0.88756\n",
      "Training at Epoch 86 iteration 0 with loss 0.14401. Total time 2.15861 hours\n",
      "Training at Epoch 86 iteration 100 with loss 0.14542. Total time 2.17277 hours\n",
      "Validation at Epoch 86 , MSE: 0.23603 , Pearson Correlation: 0.83674 with p-value: 0.0 , Concordance Index: 0.88730\n",
      "Training at Epoch 87 iteration 0 with loss 0.14303. Total time 2.18388 hours\n",
      "Training at Epoch 87 iteration 100 with loss 0.11168. Total time 2.19833 hours\n",
      "Validation at Epoch 87 , MSE: 0.25217 , Pearson Correlation: 0.82808 with p-value: 0.0 , Concordance Index: 0.89207\n",
      "Training at Epoch 88 iteration 0 with loss 0.11093. Total time 2.20916 hours\n",
      "Training at Epoch 88 iteration 100 with loss 0.11318. Total time 2.22361 hours\n",
      "Validation at Epoch 88 , MSE: 0.23444 , Pearson Correlation: 0.83824 with p-value: 0.0 , Concordance Index: 0.89511\n",
      "Training at Epoch 89 iteration 0 with loss 0.09910. Total time 2.23472 hours\n",
      "Training at Epoch 89 iteration 100 with loss 0.15537. Total time 2.24916 hours\n",
      "Validation at Epoch 89 , MSE: 0.24502 , Pearson Correlation: 0.83286 with p-value: 0.0 , Concordance Index: 0.88848\n",
      "Training at Epoch 90 iteration 0 with loss 0.09144. Total time 2.26 hours\n",
      "Training at Epoch 90 iteration 100 with loss 0.14287. Total time 2.27444 hours\n",
      "Validation at Epoch 90 , MSE: 0.23080 , Pearson Correlation: 0.84181 with p-value: 0.0 , Concordance Index: 0.89419\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 91 iteration 0 with loss 0.20157. Total time 2.28527 hours\n",
      "Training at Epoch 91 iteration 100 with loss 0.10762. Total time 2.29972 hours\n",
      "Validation at Epoch 91 , MSE: 0.23958 , Pearson Correlation: 0.83545 with p-value: 0.0 , Concordance Index: 0.88655\n",
      "Training at Epoch 92 iteration 0 with loss 0.16990. Total time 2.31083 hours\n",
      "Training at Epoch 92 iteration 100 with loss 0.16176. Total time 2.32527 hours\n",
      "Validation at Epoch 92 , MSE: 0.25113 , Pearson Correlation: 0.82653 with p-value: 0.0 , Concordance Index: 0.88381\n",
      "Training at Epoch 93 iteration 0 with loss 0.19389. Total time 2.33611 hours\n",
      "Training at Epoch 93 iteration 100 with loss 0.11675. Total time 2.35055 hours\n",
      "Validation at Epoch 93 , MSE: 0.25302 , Pearson Correlation: 0.83545 with p-value: 0.0 , Concordance Index: 0.88039\n",
      "Training at Epoch 94 iteration 0 with loss 0.13125. Total time 2.36138 hours\n",
      "Training at Epoch 94 iteration 100 with loss 0.15563. Total time 2.37583 hours\n",
      "Validation at Epoch 94 , MSE: 0.24394 , Pearson Correlation: 0.83838 with p-value: 0.0 , Concordance Index: 0.89116\n",
      "Training at Epoch 95 iteration 0 with loss 0.16428. Total time 2.38694 hours\n",
      "Training at Epoch 95 iteration 100 with loss 0.14456. Total time 2.40138 hours\n",
      "Validation at Epoch 95 , MSE: 0.24819 , Pearson Correlation: 0.82841 with p-value: 0.0 , Concordance Index: 0.88402\n",
      "Training at Epoch 96 iteration 0 with loss 0.19567. Total time 2.41222 hours\n",
      "Training at Epoch 96 iteration 100 with loss 0.10997. Total time 2.42666 hours\n",
      "Validation at Epoch 96 , MSE: 0.25136 , Pearson Correlation: 0.82436 with p-value: 0.0 , Concordance Index: 0.88121\n",
      "Training at Epoch 97 iteration 0 with loss 0.16505. Total time 2.4375 hours\n",
      "Training at Epoch 97 iteration 100 with loss 0.17943. Total time 2.45194 hours\n",
      "Validation at Epoch 97 , MSE: 0.23817 , Pearson Correlation: 0.84072 with p-value: 0.0 , Concordance Index: 0.89306\n",
      "Training at Epoch 98 iteration 0 with loss 0.13537. Total time 2.46305 hours\n",
      "Training at Epoch 98 iteration 100 with loss 0.10122. Total time 2.4775 hours\n",
      "Validation at Epoch 98 , MSE: 0.27059 , Pearson Correlation: 0.83669 with p-value: 0.0 , Concordance Index: 0.89595\n",
      "Training at Epoch 99 iteration 0 with loss 0.09293. Total time 2.48833 hours\n",
      "Training at Epoch 99 iteration 100 with loss 0.12125. Total time 2.50277 hours\n",
      "Validation at Epoch 99 , MSE: 0.24040 , Pearson Correlation: 0.83470 with p-value: 0.0 , Concordance Index: 0.88922\n",
      "Training at Epoch 100 iteration 0 with loss 0.15426. Total time 2.51388 hours\n",
      "Training at Epoch 100 iteration 100 with loss 0.09080. Total time 2.52805 hours\n",
      "Validation at Epoch 100 , MSE: 0.24209 , Pearson Correlation: 0.83998 with p-value: 0.0 , Concordance Index: 0.88694\n",
      "--- Go for Testing ---\n",
      "Testing MSE: 0.27737952173985253 , Pearson Correlation: 0.816300408076612 with p-value: 0.0 , Concordance Index: 0.8596330581356973\n",
      "--- Training Finished ---\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "drug_encoding = 'CNN'\n",
    "target_encoding = 'Transformer'\n",
    "train, val, test = data_process(X_drug, X_target, y, \n",
    "                                drug_encoding, target_encoding, \n",
    "                                split_method='random',frac=[0.7,0.1,0.2], random_seed = 3)\n",
    "\n",
    "# use the parameters setting provided in the paper: https://arxiv.org/abs/1801.10193\n",
    "config = generate_config(drug_encoding = drug_encoding, \n",
    "                         target_encoding = target_encoding, \n",
    "                         cls_hidden_dims = [1024,1024,512], \n",
    "                         train_epoch = 100, \n",
    "                         test_every_X_epoch = 100, \n",
    "                         LR = 0.001, \n",
    "                         batch_size = 128,\n",
    "                         hidden_dim_drug = 128,\n",
    "                         cnn_drug_filters = [32,64,96],\n",
    "                         cnn_drug_kernels = [4,8,12],\n",
    "                         transformer_n_layer_target = 2\n",
    "                        )\n",
    "model = models.model_initialize(**config)\n",
    "t2 = time()\n",
    "print(\"cost about \" + str(int(t2-t1)) + \" seconds\")\n",
    "model.train(train, val, test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "in total: 30056 drug-target pairs\n",
      "encoding drug...\n",
      "unique drugs: 68\n",
      "drug encoding finished...\n",
      "encoding protein...\n",
      "unique target sequence: 379\n",
      "protein encoding finished...\n",
      "splitting dataset...\n",
      "Done.\n",
      "cost about 18302 seconds\n",
      "Let's use 1 GPU!\n",
      "--- Data Preparation ---\n",
      "--- Go for Training ---\n",
      "Training at Epoch 1 iteration 0 with loss 30.2652. Total time 0.0 hours\n",
      "Training at Epoch 1 iteration 100 with loss 0.95236. Total time 0.01444 hours\n",
      "Validation at Epoch 1 , MSE: 0.69319 , Pearson Correlation: 0.45913 with p-value: 1.17288 , Concordance Index: 0.74594\n",
      "Training at Epoch 2 iteration 0 with loss 0.81929. Total time 0.02527 hours\n",
      "Training at Epoch 2 iteration 100 with loss 0.55350. Total time 0.03972 hours\n",
      "Validation at Epoch 2 , MSE: 0.57240 , Pearson Correlation: 0.52727 with p-value: 8.79798 , Concordance Index: 0.77291\n",
      "Training at Epoch 3 iteration 0 with loss 0.42577. Total time 0.05083 hours\n",
      "Training at Epoch 3 iteration 100 with loss 0.55232. Total time 0.06527 hours\n",
      "Validation at Epoch 3 , MSE: 0.54570 , Pearson Correlation: 0.58119 with p-value: 3.45152 , Concordance Index: 0.78380\n",
      "Training at Epoch 4 iteration 0 with loss 0.67845. Total time 0.07611 hours\n",
      "Training at Epoch 4 iteration 100 with loss 0.69150. Total time 0.09055 hours\n",
      "Validation at Epoch 4 , MSE: 0.51955 , Pearson Correlation: 0.60370 with p-value: 4.97883 , Concordance Index: 0.79166\n",
      "Training at Epoch 5 iteration 0 with loss 0.66256. Total time 0.10166 hours\n",
      "Training at Epoch 5 iteration 100 with loss 0.79061. Total time 0.11611 hours\n",
      "Validation at Epoch 5 , MSE: 0.54429 , Pearson Correlation: 0.62195 with p-value: 2.075e- , Concordance Index: 0.81560\n",
      "Training at Epoch 6 iteration 0 with loss 0.60603. Total time 0.12694 hours\n",
      "Training at Epoch 6 iteration 100 with loss 0.46776. Total time 0.14138 hours\n",
      "Validation at Epoch 6 , MSE: 0.49904 , Pearson Correlation: 0.62876 with p-value: 0.0 , Concordance Index: 0.81284\n",
      "Training at Epoch 7 iteration 0 with loss 0.45243. Total time 0.1525 hours\n",
      "Training at Epoch 7 iteration 100 with loss 0.50118. Total time 0.16694 hours\n",
      "Validation at Epoch 7 , MSE: 0.47773 , Pearson Correlation: 0.64650 with p-value: 0.0 , Concordance Index: 0.82422\n",
      "Training at Epoch 8 iteration 0 with loss 0.36380. Total time 0.17777 hours\n",
      "Training at Epoch 8 iteration 100 with loss 0.53220. Total time 0.19222 hours\n",
      "Validation at Epoch 8 , MSE: 0.45823 , Pearson Correlation: 0.64603 with p-value: 0.0 , Concordance Index: 0.80934\n",
      "Training at Epoch 9 iteration 0 with loss 0.32400. Total time 0.20333 hours\n",
      "Training at Epoch 9 iteration 100 with loss 0.48092. Total time 0.21777 hours\n",
      "Validation at Epoch 9 , MSE: 0.55509 , Pearson Correlation: 0.65793 with p-value: 0.0 , Concordance Index: 0.80874\n",
      "Training at Epoch 10 iteration 0 with loss 0.47321. Total time 0.22861 hours\n",
      "Training at Epoch 10 iteration 100 with loss 0.39951. Total time 0.24305 hours\n",
      "Validation at Epoch 10 , MSE: 0.44652 , Pearson Correlation: 0.67786 with p-value: 0.0 , Concordance Index: 0.82649\n",
      "Training at Epoch 11 iteration 0 with loss 0.45377. Total time 0.25388 hours\n",
      "Training at Epoch 11 iteration 100 with loss 0.46064. Total time 0.26833 hours\n",
      "Validation at Epoch 11 , MSE: 0.40079 , Pearson Correlation: 0.70145 with p-value: 0.0 , Concordance Index: 0.84024\n",
      "Training at Epoch 12 iteration 0 with loss 0.37151. Total time 0.27944 hours\n",
      "Training at Epoch 12 iteration 100 with loss 0.35430. Total time 0.29388 hours\n",
      "Validation at Epoch 12 , MSE: 0.37698 , Pearson Correlation: 0.72231 with p-value: 0.0 , Concordance Index: 0.84143\n",
      "Training at Epoch 13 iteration 0 with loss 0.36909. Total time 0.30472 hours\n",
      "Training at Epoch 13 iteration 100 with loss 0.43573. Total time 0.31916 hours\n",
      "Validation at Epoch 13 , MSE: 0.45042 , Pearson Correlation: 0.73362 with p-value: 0.0 , Concordance Index: 0.85047\n",
      "Training at Epoch 14 iteration 0 with loss 0.51924. Total time 0.33027 hours\n",
      "Training at Epoch 14 iteration 100 with loss 0.35829. Total time 0.34472 hours\n",
      "Validation at Epoch 14 , MSE: 0.38369 , Pearson Correlation: 0.72979 with p-value: 0.0 , Concordance Index: 0.85097\n",
      "Training at Epoch 15 iteration 0 with loss 0.22579. Total time 0.35555 hours\n",
      "Training at Epoch 15 iteration 100 with loss 0.31671. Total time 0.37 hours\n",
      "Validation at Epoch 15 , MSE: 0.41575 , Pearson Correlation: 0.73319 with p-value: 0.0 , Concordance Index: 0.85498\n",
      "Training at Epoch 16 iteration 0 with loss 0.58415. Total time 0.38111 hours\n",
      "Training at Epoch 16 iteration 100 with loss 0.38201. Total time 0.39555 hours\n",
      "Validation at Epoch 16 , MSE: 0.52580 , Pearson Correlation: 0.74201 with p-value: 0.0 , Concordance Index: 0.85193\n",
      "Training at Epoch 17 iteration 0 with loss 0.62587. Total time 0.40638 hours\n",
      "Training at Epoch 17 iteration 100 with loss 0.44942. Total time 0.42083 hours\n",
      "Validation at Epoch 17 , MSE: 0.47300 , Pearson Correlation: 0.73648 with p-value: 0.0 , Concordance Index: 0.84536\n",
      "Training at Epoch 18 iteration 0 with loss 0.40832. Total time 0.43194 hours\n",
      "Training at Epoch 18 iteration 100 with loss 0.46718. Total time 0.44638 hours\n",
      "Validation at Epoch 18 , MSE: 0.54720 , Pearson Correlation: 0.74980 with p-value: 0.0 , Concordance Index: 0.85862\n",
      "Training at Epoch 19 iteration 0 with loss 0.64223. Total time 0.45722 hours\n",
      "Training at Epoch 19 iteration 100 with loss 0.30767. Total time 0.47166 hours\n",
      "Validation at Epoch 19 , MSE: 0.40746 , Pearson Correlation: 0.74431 with p-value: 0.0 , Concordance Index: 0.85485\n",
      "Training at Epoch 20 iteration 0 with loss 0.39757. Total time 0.48277 hours\n",
      "Training at Epoch 20 iteration 100 with loss 0.45329. Total time 0.49722 hours\n",
      "Validation at Epoch 20 , MSE: 0.40763 , Pearson Correlation: 0.74994 with p-value: 0.0 , Concordance Index: 0.86029\n",
      "Training at Epoch 21 iteration 0 with loss 0.58582. Total time 0.50805 hours\n",
      "Training at Epoch 21 iteration 100 with loss 0.22836. Total time 0.5225 hours\n",
      "Validation at Epoch 21 , MSE: 0.34137 , Pearson Correlation: 0.75441 with p-value: 0.0 , Concordance Index: 0.85671\n",
      "Training at Epoch 22 iteration 0 with loss 0.24857. Total time 0.53333 hours\n",
      "Training at Epoch 22 iteration 100 with loss 0.39770. Total time 0.54777 hours\n",
      "Validation at Epoch 22 , MSE: 0.36192 , Pearson Correlation: 0.75074 with p-value: 0.0 , Concordance Index: 0.86421\n",
      "Training at Epoch 23 iteration 0 with loss 0.24820. Total time 0.55888 hours\n",
      "Training at Epoch 23 iteration 100 with loss 0.58599. Total time 0.57333 hours\n",
      "Validation at Epoch 23 , MSE: 0.42372 , Pearson Correlation: 0.74637 with p-value: 0.0 , Concordance Index: 0.85333\n",
      "Training at Epoch 24 iteration 0 with loss 0.54353. Total time 0.58416 hours\n",
      "Training at Epoch 24 iteration 100 with loss 0.22757. Total time 0.59861 hours\n",
      "Validation at Epoch 24 , MSE: 0.37193 , Pearson Correlation: 0.74819 with p-value: 0.0 , Concordance Index: 0.86584\n",
      "Training at Epoch 25 iteration 0 with loss 0.23173. Total time 0.60972 hours\n",
      "Training at Epoch 25 iteration 100 with loss 0.24706. Total time 0.62416 hours\n",
      "Validation at Epoch 25 , MSE: 0.40198 , Pearson Correlation: 0.75469 with p-value: 0.0 , Concordance Index: 0.86295\n",
      "Training at Epoch 26 iteration 0 with loss 0.28807. Total time 0.635 hours\n",
      "Training at Epoch 26 iteration 100 with loss 0.40398. Total time 0.64944 hours\n",
      "Validation at Epoch 26 , MSE: 0.33073 , Pearson Correlation: 0.76766 with p-value: 0.0 , Concordance Index: 0.86762\n",
      "Training at Epoch 27 iteration 0 with loss 0.17872. Total time 0.66055 hours\n",
      "Training at Epoch 27 iteration 100 with loss 0.34011. Total time 0.675 hours\n",
      "Validation at Epoch 27 , MSE: 0.34339 , Pearson Correlation: 0.75344 with p-value: 0.0 , Concordance Index: 0.86033\n",
      "Training at Epoch 28 iteration 0 with loss 0.22442. Total time 0.68583 hours\n",
      "Training at Epoch 28 iteration 100 with loss 0.56146. Total time 0.70027 hours\n",
      "Validation at Epoch 28 , MSE: 0.33010 , Pearson Correlation: 0.76154 with p-value: 0.0 , Concordance Index: 0.86847\n",
      "Training at Epoch 29 iteration 0 with loss 0.29260. Total time 0.71138 hours\n",
      "Training at Epoch 29 iteration 100 with loss 0.29598. Total time 0.72583 hours\n",
      "Validation at Epoch 29 , MSE: 0.35597 , Pearson Correlation: 0.76551 with p-value: 0.0 , Concordance Index: 0.87051\n",
      "Training at Epoch 30 iteration 0 with loss 0.27568. Total time 0.73666 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 30 iteration 100 with loss 0.41090. Total time 0.75111 hours\n",
      "Validation at Epoch 30 , MSE: 0.34947 , Pearson Correlation: 0.76449 with p-value: 0.0 , Concordance Index: 0.86442\n",
      "Training at Epoch 31 iteration 0 with loss 0.24166. Total time 0.76194 hours\n",
      "Training at Epoch 31 iteration 100 with loss 0.35644. Total time 0.77638 hours\n",
      "Validation at Epoch 31 , MSE: 0.33170 , Pearson Correlation: 0.76145 with p-value: 0.0 , Concordance Index: 0.86532\n",
      "Training at Epoch 32 iteration 0 with loss 0.23750. Total time 0.7875 hours\n",
      "Training at Epoch 32 iteration 100 with loss 0.30020. Total time 0.80194 hours\n",
      "Validation at Epoch 32 , MSE: 0.41522 , Pearson Correlation: 0.76070 with p-value: 0.0 , Concordance Index: 0.86823\n",
      "Training at Epoch 33 iteration 0 with loss 0.28639. Total time 0.81277 hours\n",
      "Training at Epoch 33 iteration 100 with loss 0.28512. Total time 0.82722 hours\n",
      "Validation at Epoch 33 , MSE: 0.38089 , Pearson Correlation: 0.77379 with p-value: 0.0 , Concordance Index: 0.87115\n",
      "Training at Epoch 34 iteration 0 with loss 0.34748. Total time 0.83833 hours\n",
      "Training at Epoch 34 iteration 100 with loss 0.34484. Total time 0.85277 hours\n",
      "Validation at Epoch 34 , MSE: 0.39478 , Pearson Correlation: 0.77472 with p-value: 0.0 , Concordance Index: 0.87487\n",
      "Training at Epoch 35 iteration 0 with loss 0.25945. Total time 0.86361 hours\n",
      "Training at Epoch 35 iteration 100 with loss 0.32839. Total time 0.87805 hours\n",
      "Validation at Epoch 35 , MSE: 0.32692 , Pearson Correlation: 0.76439 with p-value: 0.0 , Concordance Index: 0.86539\n",
      "Training at Epoch 36 iteration 0 with loss 0.25063. Total time 0.88916 hours\n",
      "Training at Epoch 36 iteration 100 with loss 0.45558. Total time 0.90361 hours\n",
      "Validation at Epoch 36 , MSE: 0.37886 , Pearson Correlation: 0.76980 with p-value: 0.0 , Concordance Index: 0.87340\n",
      "Training at Epoch 37 iteration 0 with loss 0.35288. Total time 0.91444 hours\n",
      "Training at Epoch 37 iteration 100 with loss 0.22530. Total time 0.92888 hours\n",
      "Validation at Epoch 37 , MSE: 0.34251 , Pearson Correlation: 0.78235 with p-value: 0.0 , Concordance Index: 0.88187\n",
      "Training at Epoch 38 iteration 0 with loss 0.18894. Total time 0.93972 hours\n",
      "Training at Epoch 38 iteration 100 with loss 0.27906. Total time 0.95416 hours\n",
      "Validation at Epoch 38 , MSE: 0.32201 , Pearson Correlation: 0.77683 with p-value: 0.0 , Concordance Index: 0.87696\n",
      "Training at Epoch 39 iteration 0 with loss 0.22446. Total time 0.96527 hours\n",
      "Training at Epoch 39 iteration 100 with loss 0.25664. Total time 0.97972 hours\n",
      "Validation at Epoch 39 , MSE: 0.32869 , Pearson Correlation: 0.77086 with p-value: 0.0 , Concordance Index: 0.86568\n",
      "Training at Epoch 40 iteration 0 with loss 0.28998. Total time 0.99055 hours\n",
      "Training at Epoch 40 iteration 100 with loss 0.39586. Total time 1.005 hours\n",
      "Validation at Epoch 40 , MSE: 0.34093 , Pearson Correlation: 0.77608 with p-value: 0.0 , Concordance Index: 0.86753\n",
      "Training at Epoch 41 iteration 0 with loss 0.34631. Total time 1.01611 hours\n",
      "Training at Epoch 41 iteration 100 with loss 0.22076. Total time 1.03055 hours\n",
      "Validation at Epoch 41 , MSE: 0.31367 , Pearson Correlation: 0.78238 with p-value: 0.0 , Concordance Index: 0.87231\n",
      "Training at Epoch 42 iteration 0 with loss 0.35726. Total time 1.04138 hours\n",
      "Training at Epoch 42 iteration 100 with loss 0.26661. Total time 1.05583 hours\n",
      "Validation at Epoch 42 , MSE: 0.31487 , Pearson Correlation: 0.78094 with p-value: 0.0 , Concordance Index: 0.87805\n",
      "Training at Epoch 43 iteration 0 with loss 0.29264. Total time 1.06694 hours\n",
      "Training at Epoch 43 iteration 100 with loss 0.30573. Total time 1.08138 hours\n",
      "Validation at Epoch 43 , MSE: 0.36150 , Pearson Correlation: 0.77113 with p-value: 0.0 , Concordance Index: 0.86520\n",
      "Training at Epoch 44 iteration 0 with loss 0.60737. Total time 1.09222 hours\n",
      "Training at Epoch 44 iteration 100 with loss 0.30649. Total time 1.10666 hours\n",
      "Validation at Epoch 44 , MSE: 0.32265 , Pearson Correlation: 0.77257 with p-value: 0.0 , Concordance Index: 0.86960\n",
      "Training at Epoch 45 iteration 0 with loss 0.19534. Total time 1.11777 hours\n",
      "Training at Epoch 45 iteration 100 with loss 0.39114. Total time 1.13222 hours\n",
      "Validation at Epoch 45 , MSE: 0.30629 , Pearson Correlation: 0.78519 with p-value: 0.0 , Concordance Index: 0.87917\n",
      "Training at Epoch 46 iteration 0 with loss 0.17393. Total time 1.14305 hours\n",
      "Training at Epoch 46 iteration 100 with loss 0.18819. Total time 1.1575 hours\n",
      "Validation at Epoch 46 , MSE: 0.36804 , Pearson Correlation: 0.78477 with p-value: 0.0 , Concordance Index: 0.87948\n",
      "Training at Epoch 47 iteration 0 with loss 0.26370. Total time 1.16861 hours\n",
      "Training at Epoch 47 iteration 100 with loss 0.31933. Total time 1.18305 hours\n",
      "Validation at Epoch 47 , MSE: 0.31577 , Pearson Correlation: 0.79081 with p-value: 0.0 , Concordance Index: 0.87683\n",
      "Training at Epoch 48 iteration 0 with loss 0.24914. Total time 1.19388 hours\n",
      "Training at Epoch 48 iteration 100 with loss 0.27726. Total time 1.20833 hours\n",
      "Validation at Epoch 48 , MSE: 0.33914 , Pearson Correlation: 0.78392 with p-value: 0.0 , Concordance Index: 0.87605\n",
      "Training at Epoch 49 iteration 0 with loss 0.26412. Total time 1.21916 hours\n",
      "Training at Epoch 49 iteration 100 with loss 0.17859. Total time 1.23361 hours\n",
      "Validation at Epoch 49 , MSE: 0.29619 , Pearson Correlation: 0.79490 with p-value: 0.0 , Concordance Index: 0.87769\n",
      "Training at Epoch 50 iteration 0 with loss 0.17800. Total time 1.24472 hours\n",
      "Training at Epoch 50 iteration 100 with loss 0.14565. Total time 1.25916 hours\n",
      "Validation at Epoch 50 , MSE: 0.30610 , Pearson Correlation: 0.79522 with p-value: 0.0 , Concordance Index: 0.88002\n",
      "Training at Epoch 51 iteration 0 with loss 0.20935. Total time 1.27 hours\n",
      "Training at Epoch 51 iteration 100 with loss 0.23217. Total time 1.28444 hours\n",
      "Validation at Epoch 51 , MSE: 0.34290 , Pearson Correlation: 0.79159 with p-value: 0.0 , Concordance Index: 0.88118\n",
      "Training at Epoch 52 iteration 0 with loss 0.29277. Total time 1.29555 hours\n",
      "Training at Epoch 52 iteration 100 with loss 0.33479. Total time 1.31 hours\n",
      "Validation at Epoch 52 , MSE: 0.34322 , Pearson Correlation: 0.79364 with p-value: 0.0 , Concordance Index: 0.88018\n",
      "Training at Epoch 53 iteration 0 with loss 0.29664. Total time 1.32111 hours\n",
      "Training at Epoch 53 iteration 100 with loss 0.22566. Total time 1.33555 hours\n",
      "Validation at Epoch 53 , MSE: 0.37422 , Pearson Correlation: 0.78664 with p-value: 0.0 , Concordance Index: 0.87479\n",
      "Training at Epoch 54 iteration 0 with loss 0.37216. Total time 1.34638 hours\n",
      "Training at Epoch 54 iteration 100 with loss 0.25888. Total time 1.36083 hours\n",
      "Validation at Epoch 54 , MSE: 0.34831 , Pearson Correlation: 0.79536 with p-value: 0.0 , Concordance Index: 0.86746\n",
      "Training at Epoch 55 iteration 0 with loss 0.30551. Total time 1.37194 hours\n",
      "Training at Epoch 55 iteration 100 with loss 0.31080. Total time 1.38638 hours\n",
      "Validation at Epoch 55 , MSE: 0.31619 , Pearson Correlation: 0.77988 with p-value: 0.0 , Concordance Index: 0.87185\n",
      "Training at Epoch 56 iteration 0 with loss 0.13797. Total time 1.39722 hours\n",
      "Training at Epoch 56 iteration 100 with loss 0.25522. Total time 1.41166 hours\n",
      "Validation at Epoch 56 , MSE: 0.30946 , Pearson Correlation: 0.79060 with p-value: 0.0 , Concordance Index: 0.88464\n",
      "Training at Epoch 57 iteration 0 with loss 0.23314. Total time 1.42277 hours\n",
      "Training at Epoch 57 iteration 100 with loss 0.15035. Total time 1.43722 hours\n",
      "Validation at Epoch 57 , MSE: 0.37326 , Pearson Correlation: 0.79630 with p-value: 0.0 , Concordance Index: 0.87987\n",
      "Training at Epoch 58 iteration 0 with loss 0.24355. Total time 1.44805 hours\n",
      "Training at Epoch 58 iteration 100 with loss 0.23390. Total time 1.4625 hours\n",
      "Validation at Epoch 58 , MSE: 0.29048 , Pearson Correlation: 0.80064 with p-value: 0.0 , Concordance Index: 0.87382\n",
      "Training at Epoch 59 iteration 0 with loss 0.21278. Total time 1.47361 hours\n",
      "Training at Epoch 59 iteration 100 with loss 0.19260. Total time 1.48777 hours\n",
      "Validation at Epoch 59 , MSE: 0.34188 , Pearson Correlation: 0.80688 with p-value: 0.0 , Concordance Index: 0.88707\n",
      "Training at Epoch 60 iteration 0 with loss 0.15220. Total time 1.49888 hours\n",
      "Training at Epoch 60 iteration 100 with loss 0.22774. Total time 1.51333 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validation at Epoch 60 , MSE: 0.30378 , Pearson Correlation: 0.80474 with p-value: 0.0 , Concordance Index: 0.88114\n",
      "Training at Epoch 61 iteration 0 with loss 0.20630. Total time 1.52416 hours\n",
      "Training at Epoch 61 iteration 100 with loss 0.20505. Total time 1.53861 hours\n",
      "Validation at Epoch 61 , MSE: 0.31644 , Pearson Correlation: 0.79363 with p-value: 0.0 , Concordance Index: 0.88025\n",
      "Training at Epoch 62 iteration 0 with loss 0.31434. Total time 1.54972 hours\n",
      "Training at Epoch 62 iteration 100 with loss 0.20396. Total time 1.56416 hours\n",
      "Validation at Epoch 62 , MSE: 0.32115 , Pearson Correlation: 0.79763 with p-value: 0.0 , Concordance Index: 0.87830\n",
      "Training at Epoch 63 iteration 0 with loss 0.23760. Total time 1.575 hours\n",
      "Training at Epoch 63 iteration 100 with loss 0.14928. Total time 1.58944 hours\n",
      "Validation at Epoch 63 , MSE: 0.28121 , Pearson Correlation: 0.80786 with p-value: 0.0 , Concordance Index: 0.87910\n",
      "Training at Epoch 64 iteration 0 with loss 0.15763. Total time 1.60027 hours\n",
      "Training at Epoch 64 iteration 100 with loss 0.21975. Total time 1.61472 hours\n",
      "Validation at Epoch 64 , MSE: 0.28927 , Pearson Correlation: 0.81251 with p-value: 0.0 , Concordance Index: 0.88244\n",
      "Training at Epoch 65 iteration 0 with loss 0.17995. Total time 1.62583 hours\n",
      "Training at Epoch 65 iteration 100 with loss 0.23818. Total time 1.64027 hours\n",
      "Validation at Epoch 65 , MSE: 0.27952 , Pearson Correlation: 0.80536 with p-value: 0.0 , Concordance Index: 0.87977\n",
      "Training at Epoch 66 iteration 0 with loss 0.14509. Total time 1.65111 hours\n",
      "Training at Epoch 66 iteration 100 with loss 0.19537. Total time 1.66555 hours\n",
      "Validation at Epoch 66 , MSE: 0.27854 , Pearson Correlation: 0.80759 with p-value: 0.0 , Concordance Index: 0.88313\n",
      "Training at Epoch 67 iteration 0 with loss 0.19718. Total time 1.67638 hours\n",
      "Training at Epoch 67 iteration 100 with loss 0.21429. Total time 1.69083 hours\n",
      "Validation at Epoch 67 , MSE: 0.26139 , Pearson Correlation: 0.81848 with p-value: 0.0 , Concordance Index: 0.88773\n",
      "Training at Epoch 68 iteration 0 with loss 0.20851. Total time 1.70194 hours\n",
      "Training at Epoch 68 iteration 100 with loss 0.15123. Total time 1.71638 hours\n",
      "Validation at Epoch 68 , MSE: 0.26883 , Pearson Correlation: 0.81751 with p-value: 0.0 , Concordance Index: 0.88524\n",
      "Training at Epoch 69 iteration 0 with loss 0.14986. Total time 1.72722 hours\n",
      "Training at Epoch 69 iteration 100 with loss 0.15009. Total time 1.74166 hours\n",
      "Validation at Epoch 69 , MSE: 0.32062 , Pearson Correlation: 0.80927 with p-value: 0.0 , Concordance Index: 0.88044\n",
      "Training at Epoch 70 iteration 0 with loss 0.18076. Total time 1.7525 hours\n",
      "Training at Epoch 70 iteration 100 with loss 0.16388. Total time 1.76694 hours\n",
      "Validation at Epoch 70 , MSE: 0.27771 , Pearson Correlation: 0.81037 with p-value: 0.0 , Concordance Index: 0.88475\n",
      "Training at Epoch 71 iteration 0 with loss 0.18908. Total time 1.77805 hours\n",
      "Training at Epoch 71 iteration 100 with loss 0.15017. Total time 1.7925 hours\n",
      "Validation at Epoch 71 , MSE: 0.28258 , Pearson Correlation: 0.81560 with p-value: 0.0 , Concordance Index: 0.88540\n",
      "Training at Epoch 72 iteration 0 with loss 0.15674. Total time 1.80333 hours\n",
      "Training at Epoch 72 iteration 100 with loss 0.15352. Total time 1.81777 hours\n",
      "Validation at Epoch 72 , MSE: 0.27611 , Pearson Correlation: 0.80961 with p-value: 0.0 , Concordance Index: 0.88212\n",
      "Training at Epoch 73 iteration 0 with loss 0.12759. Total time 1.82888 hours\n",
      "Training at Epoch 73 iteration 100 with loss 0.19280. Total time 1.84333 hours\n",
      "Validation at Epoch 73 , MSE: 0.28510 , Pearson Correlation: 0.82208 with p-value: 0.0 , Concordance Index: 0.89160\n",
      "Training at Epoch 74 iteration 0 with loss 0.11823. Total time 1.85416 hours\n",
      "Training at Epoch 74 iteration 100 with loss 0.14746. Total time 1.86861 hours\n",
      "Validation at Epoch 74 , MSE: 0.28581 , Pearson Correlation: 0.81082 with p-value: 0.0 , Concordance Index: 0.88179\n",
      "Training at Epoch 75 iteration 0 with loss 0.16369. Total time 1.87972 hours\n",
      "Training at Epoch 75 iteration 100 with loss 0.18155. Total time 1.89416 hours\n",
      "Validation at Epoch 75 , MSE: 0.26228 , Pearson Correlation: 0.81745 with p-value: 0.0 , Concordance Index: 0.89095\n",
      "Training at Epoch 76 iteration 0 with loss 0.16909. Total time 1.905 hours\n",
      "Training at Epoch 76 iteration 100 with loss 0.26418. Total time 1.91944 hours\n",
      "Validation at Epoch 76 , MSE: 0.29987 , Pearson Correlation: 0.79150 with p-value: 0.0 , Concordance Index: 0.87406\n",
      "Training at Epoch 77 iteration 0 with loss 0.27650. Total time 1.93027 hours\n",
      "Training at Epoch 77 iteration 100 with loss 0.21924. Total time 1.94472 hours\n",
      "Validation at Epoch 77 , MSE: 0.28632 , Pearson Correlation: 0.80436 with p-value: 0.0 , Concordance Index: 0.88310\n",
      "Training at Epoch 78 iteration 0 with loss 0.14867. Total time 1.95583 hours\n",
      "Training at Epoch 78 iteration 100 with loss 0.09028. Total time 1.97027 hours\n",
      "Validation at Epoch 78 , MSE: 0.26892 , Pearson Correlation: 0.81397 with p-value: 0.0 , Concordance Index: 0.88422\n",
      "Training at Epoch 79 iteration 0 with loss 0.15781. Total time 1.98111 hours\n",
      "Training at Epoch 79 iteration 100 with loss 0.28994. Total time 1.99555 hours\n",
      "Validation at Epoch 79 , MSE: 0.27364 , Pearson Correlation: 0.81434 with p-value: 0.0 , Concordance Index: 0.87560\n",
      "Training at Epoch 80 iteration 0 with loss 0.14360. Total time 2.00666 hours\n",
      "Training at Epoch 80 iteration 100 with loss 0.15392. Total time 2.02111 hours\n",
      "Validation at Epoch 80 , MSE: 0.25650 , Pearson Correlation: 0.82121 with p-value: 0.0 , Concordance Index: 0.88072\n",
      "Training at Epoch 81 iteration 0 with loss 0.13946. Total time 2.03194 hours\n",
      "Training at Epoch 81 iteration 100 with loss 0.18494. Total time 2.04638 hours\n",
      "Validation at Epoch 81 , MSE: 0.28071 , Pearson Correlation: 0.81924 with p-value: 0.0 , Concordance Index: 0.88716\n",
      "Training at Epoch 82 iteration 0 with loss 0.12389. Total time 2.05722 hours\n",
      "Training at Epoch 82 iteration 100 with loss 0.17087. Total time 2.07166 hours\n",
      "Validation at Epoch 82 , MSE: 0.27664 , Pearson Correlation: 0.81787 with p-value: 0.0 , Concordance Index: 0.88451\n",
      "Training at Epoch 83 iteration 0 with loss 0.12725. Total time 2.08277 hours\n",
      "Training at Epoch 83 iteration 100 with loss 0.18741. Total time 2.09722 hours\n",
      "Validation at Epoch 83 , MSE: 0.26684 , Pearson Correlation: 0.81685 with p-value: 0.0 , Concordance Index: 0.89239\n",
      "Training at Epoch 84 iteration 0 with loss 0.23366. Total time 2.10805 hours\n",
      "Training at Epoch 84 iteration 100 with loss 0.10766. Total time 2.1225 hours\n",
      "Validation at Epoch 84 , MSE: 0.28029 , Pearson Correlation: 0.81522 with p-value: 0.0 , Concordance Index: 0.88411\n",
      "Training at Epoch 85 iteration 0 with loss 0.11693. Total time 2.13361 hours\n",
      "Training at Epoch 85 iteration 100 with loss 0.14976. Total time 2.14805 hours\n",
      "Validation at Epoch 85 , MSE: 0.26707 , Pearson Correlation: 0.81477 with p-value: 0.0 , Concordance Index: 0.89235\n",
      "Training at Epoch 86 iteration 0 with loss 0.13231. Total time 2.15888 hours\n",
      "Training at Epoch 86 iteration 100 with loss 0.13588. Total time 2.17333 hours\n",
      "Validation at Epoch 86 , MSE: 0.26356 , Pearson Correlation: 0.81691 with p-value: 0.0 , Concordance Index: 0.89367\n",
      "Training at Epoch 87 iteration 0 with loss 0.08940. Total time 2.18444 hours\n",
      "Training at Epoch 87 iteration 100 with loss 0.12539. Total time 2.19888 hours\n",
      "Validation at Epoch 87 , MSE: 0.25736 , Pearson Correlation: 0.82389 with p-value: 0.0 , Concordance Index: 0.89258\n",
      "Training at Epoch 88 iteration 0 with loss 0.14142. Total time 2.20972 hours\n",
      "Training at Epoch 88 iteration 100 with loss 0.21759. Total time 2.22416 hours\n",
      "Validation at Epoch 88 , MSE: 0.26472 , Pearson Correlation: 0.81730 with p-value: 0.0 , Concordance Index: 0.89342\n",
      "Training at Epoch 89 iteration 0 with loss 0.11653. Total time 2.235 hours\n",
      "Training at Epoch 89 iteration 100 with loss 0.12802. Total time 2.24944 hours\n",
      "Validation at Epoch 89 , MSE: 0.26061 , Pearson Correlation: 0.82012 with p-value: 0.0 , Concordance Index: 0.89299\n",
      "Training at Epoch 90 iteration 0 with loss 0.15211. Total time 2.26055 hours\n",
      "Training at Epoch 90 iteration 100 with loss 0.13395. Total time 2.275 hours\n",
      "Validation at Epoch 90 , MSE: 0.27800 , Pearson Correlation: 0.81512 with p-value: 0.0 , Concordance Index: 0.88891\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 91 iteration 0 with loss 0.11287. Total time 2.28583 hours\n",
      "Training at Epoch 91 iteration 100 with loss 0.12489. Total time 2.30027 hours\n",
      "Validation at Epoch 91 , MSE: 0.26924 , Pearson Correlation: 0.81947 with p-value: 0.0 , Concordance Index: 0.89410\n",
      "Training at Epoch 92 iteration 0 with loss 0.12799. Total time 2.31138 hours\n",
      "Training at Epoch 92 iteration 100 with loss 0.22786. Total time 2.32583 hours\n",
      "Validation at Epoch 92 , MSE: 0.25615 , Pearson Correlation: 0.82302 with p-value: 0.0 , Concordance Index: 0.89336\n",
      "Training at Epoch 93 iteration 0 with loss 0.12069. Total time 2.33666 hours\n",
      "Training at Epoch 93 iteration 100 with loss 0.10679. Total time 2.35111 hours\n",
      "Validation at Epoch 93 , MSE: 0.26901 , Pearson Correlation: 0.81487 with p-value: 0.0 , Concordance Index: 0.88402\n",
      "Training at Epoch 94 iteration 0 with loss 0.15185. Total time 2.36194 hours\n",
      "Training at Epoch 94 iteration 100 with loss 0.18885. Total time 2.37638 hours\n",
      "Validation at Epoch 94 , MSE: 0.25596 , Pearson Correlation: 0.82341 with p-value: 0.0 , Concordance Index: 0.88961\n",
      "Training at Epoch 95 iteration 0 with loss 0.07705. Total time 2.3875 hours\n",
      "Training at Epoch 95 iteration 100 with loss 0.14535. Total time 2.40194 hours\n",
      "Validation at Epoch 95 , MSE: 0.24933 , Pearson Correlation: 0.82947 with p-value: 0.0 , Concordance Index: 0.89681\n",
      "Training at Epoch 96 iteration 0 with loss 0.11669. Total time 2.41277 hours\n",
      "Training at Epoch 96 iteration 100 with loss 0.11487. Total time 2.42722 hours\n",
      "Validation at Epoch 96 , MSE: 0.26288 , Pearson Correlation: 0.82698 with p-value: 0.0 , Concordance Index: 0.89686\n",
      "Training at Epoch 97 iteration 0 with loss 0.06832. Total time 2.43833 hours\n",
      "Training at Epoch 97 iteration 100 with loss 0.10396. Total time 2.45277 hours\n",
      "Validation at Epoch 97 , MSE: 0.26887 , Pearson Correlation: 0.81632 with p-value: 0.0 , Concordance Index: 0.89108\n",
      "Training at Epoch 98 iteration 0 with loss 0.09241. Total time 2.46361 hours\n",
      "Training at Epoch 98 iteration 100 with loss 0.10891. Total time 2.47805 hours\n",
      "Validation at Epoch 98 , MSE: 0.26655 , Pearson Correlation: 0.81967 with p-value: 0.0 , Concordance Index: 0.89205\n",
      "Training at Epoch 99 iteration 0 with loss 0.21876. Total time 2.48916 hours\n",
      "Training at Epoch 99 iteration 100 with loss 0.09809. Total time 2.50361 hours\n",
      "Validation at Epoch 99 , MSE: 0.29846 , Pearson Correlation: 0.82181 with p-value: 0.0 , Concordance Index: 0.89276\n",
      "Training at Epoch 100 iteration 0 with loss 0.10817. Total time 2.51444 hours\n",
      "Training at Epoch 100 iteration 100 with loss 0.08074. Total time 2.52888 hours\n",
      "Validation at Epoch 100 , MSE: 0.25717 , Pearson Correlation: 0.82679 with p-value: 0.0 , Concordance Index: 0.89074\n",
      "--- Go for Testing ---\n",
      "Testing MSE: 0.2911341721663075 , Pearson Correlation: 0.7932991968395793 with p-value: 0.0 , Concordance Index: 0.846200750150985\n",
      "--- Training Finished ---\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "drug_encoding = 'CNN'\n",
    "target_encoding = 'Transformer'\n",
    "train, val, test = data_process(X_drug, X_target, y, \n",
    "                                drug_encoding, target_encoding, \n",
    "                                split_method='random',frac=[0.7,0.1,0.2], random_seed = 4)\n",
    "\n",
    "# use the parameters setting provided in the paper: https://arxiv.org/abs/1801.10193\n",
    "config = generate_config(drug_encoding = drug_encoding, \n",
    "                         target_encoding = target_encoding, \n",
    "                         cls_hidden_dims = [1024,1024,512], \n",
    "                         train_epoch = 100, \n",
    "                         test_every_X_epoch = 100, \n",
    "                         LR = 0.001, \n",
    "                         batch_size = 128,\n",
    "                         hidden_dim_drug = 128,\n",
    "                         cnn_drug_filters = [32,64,96],\n",
    "                         cnn_drug_kernels = [4,8,12],\n",
    "                         transformer_n_layer_target = 2\n",
    "                        )\n",
    "model = models.model_initialize(**config)\n",
    "t2 = time()\n",
    "print(\"cost about \" + str(int(t2-t1)) + \" seconds\")\n",
    "model.train(train, val, test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "in total: 30056 drug-target pairs\n",
      "encoding drug...\n",
      "unique drugs: 68\n",
      "drug encoding finished...\n",
      "encoding protein...\n",
      "unique target sequence: 379\n",
      "protein encoding finished...\n",
      "splitting dataset...\n",
      "Done.\n",
      "cost about 27460 seconds\n",
      "Let's use 1 GPU!\n",
      "--- Data Preparation ---\n",
      "--- Go for Training ---\n",
      "Training at Epoch 1 iteration 0 with loss 32.7213. Total time 0.0 hours\n",
      "Training at Epoch 1 iteration 100 with loss 0.81970. Total time 0.01444 hours\n",
      "Validation at Epoch 1 , MSE: 0.73400 , Pearson Correlation: 0.29991 with p-value: 1.59083 , Concordance Index: 0.64908\n",
      "Training at Epoch 2 iteration 0 with loss 0.66492. Total time 0.02527 hours\n",
      "Training at Epoch 2 iteration 100 with loss 0.72553. Total time 0.03972 hours\n",
      "Validation at Epoch 2 , MSE: 0.58458 , Pearson Correlation: 0.52164 with p-value: 1.84471 , Concordance Index: 0.76374\n",
      "Training at Epoch 3 iteration 0 with loss 0.67378. Total time 0.05083 hours\n",
      "Training at Epoch 3 iteration 100 with loss 0.78906. Total time 0.06527 hours\n",
      "Validation at Epoch 3 , MSE: 0.56756 , Pearson Correlation: 0.54413 with p-value: 2.51753 , Concordance Index: 0.76905\n",
      "Training at Epoch 4 iteration 0 with loss 0.74703. Total time 0.07611 hours\n",
      "Training at Epoch 4 iteration 100 with loss 0.51057. Total time 0.09055 hours\n",
      "Validation at Epoch 4 , MSE: 0.52936 , Pearson Correlation: 0.58915 with p-value: 1.92711 , Concordance Index: 0.78194\n",
      "Training at Epoch 5 iteration 0 with loss 0.59019. Total time 0.10166 hours\n",
      "Training at Epoch 5 iteration 100 with loss 0.56593. Total time 0.11611 hours\n",
      "Validation at Epoch 5 , MSE: 0.58701 , Pearson Correlation: 0.60369 with p-value: 5.23590 , Concordance Index: 0.79454\n",
      "Training at Epoch 6 iteration 0 with loss 0.67913. Total time 0.12694 hours\n",
      "Training at Epoch 6 iteration 100 with loss 0.41564. Total time 0.14138 hours\n",
      "Validation at Epoch 6 , MSE: 0.60787 , Pearson Correlation: 0.62595 with p-value: 0.0 , Concordance Index: 0.80939\n",
      "Training at Epoch 7 iteration 0 with loss 0.67638. Total time 0.1525 hours\n",
      "Training at Epoch 7 iteration 100 with loss 0.41443. Total time 0.16694 hours\n",
      "Validation at Epoch 7 , MSE: 0.55652 , Pearson Correlation: 0.61327 with p-value: 4.25739 , Concordance Index: 0.79991\n",
      "Training at Epoch 8 iteration 0 with loss 0.42448. Total time 0.17777 hours\n",
      "Training at Epoch 8 iteration 100 with loss 0.43820. Total time 0.19222 hours\n",
      "Validation at Epoch 8 , MSE: 0.58968 , Pearson Correlation: 0.63244 with p-value: 0.0 , Concordance Index: 0.80354\n",
      "Training at Epoch 9 iteration 0 with loss 0.62966. Total time 0.20333 hours\n",
      "Training at Epoch 9 iteration 100 with loss 0.63971. Total time 0.21777 hours\n",
      "Validation at Epoch 9 , MSE: 0.49716 , Pearson Correlation: 0.63663 with p-value: 0.0 , Concordance Index: 0.81356\n",
      "Training at Epoch 10 iteration 0 with loss 0.37678. Total time 0.22861 hours\n",
      "Training at Epoch 10 iteration 100 with loss 0.60063. Total time 0.24305 hours\n",
      "Validation at Epoch 10 , MSE: 0.47674 , Pearson Correlation: 0.66268 with p-value: 0.0 , Concordance Index: 0.80034\n",
      "Training at Epoch 11 iteration 0 with loss 0.57010. Total time 0.25416 hours\n",
      "Training at Epoch 11 iteration 100 with loss 0.40972. Total time 0.26861 hours\n",
      "Validation at Epoch 11 , MSE: 0.43924 , Pearson Correlation: 0.69994 with p-value: 0.0 , Concordance Index: 0.81720\n",
      "Training at Epoch 12 iteration 0 with loss 0.69368. Total time 0.27944 hours\n",
      "Training at Epoch 12 iteration 100 with loss 0.35260. Total time 0.29388 hours\n",
      "Validation at Epoch 12 , MSE: 0.47604 , Pearson Correlation: 0.72792 with p-value: 0.0 , Concordance Index: 0.82094\n",
      "Training at Epoch 13 iteration 0 with loss 0.35146. Total time 0.305 hours\n",
      "Training at Epoch 13 iteration 100 with loss 0.52856. Total time 0.31944 hours\n",
      "Validation at Epoch 13 , MSE: 0.39939 , Pearson Correlation: 0.72388 with p-value: 0.0 , Concordance Index: 0.81379\n",
      "Training at Epoch 14 iteration 0 with loss 0.70271. Total time 0.33027 hours\n",
      "Training at Epoch 14 iteration 100 with loss 0.38653. Total time 0.34472 hours\n",
      "Validation at Epoch 14 , MSE: 0.39646 , Pearson Correlation: 0.73274 with p-value: 0.0 , Concordance Index: 0.82592\n",
      "Training at Epoch 15 iteration 0 with loss 0.43639. Total time 0.35583 hours\n",
      "Training at Epoch 15 iteration 100 with loss 0.38685. Total time 0.37027 hours\n",
      "Validation at Epoch 15 , MSE: 0.48584 , Pearson Correlation: 0.71020 with p-value: 0.0 , Concordance Index: 0.80694\n",
      "Training at Epoch 16 iteration 0 with loss 0.44396. Total time 0.38138 hours\n",
      "Training at Epoch 16 iteration 100 with loss 0.44914. Total time 0.39583 hours\n",
      "Validation at Epoch 16 , MSE: 0.40233 , Pearson Correlation: 0.73276 with p-value: 0.0 , Concordance Index: 0.82081\n",
      "Training at Epoch 17 iteration 0 with loss 0.45547. Total time 0.40666 hours\n",
      "Training at Epoch 17 iteration 100 with loss 0.31932. Total time 0.42111 hours\n",
      "Validation at Epoch 17 , MSE: 0.39854 , Pearson Correlation: 0.75077 with p-value: 0.0 , Concordance Index: 0.83411\n",
      "Training at Epoch 18 iteration 0 with loss 0.53232. Total time 0.43222 hours\n",
      "Training at Epoch 18 iteration 100 with loss 0.50563. Total time 0.44666 hours\n",
      "Validation at Epoch 18 , MSE: 0.35106 , Pearson Correlation: 0.75131 with p-value: 0.0 , Concordance Index: 0.82084\n",
      "Training at Epoch 19 iteration 0 with loss 0.34700. Total time 0.4575 hours\n",
      "Training at Epoch 19 iteration 100 with loss 0.51445. Total time 0.47194 hours\n",
      "Validation at Epoch 19 , MSE: 0.38067 , Pearson Correlation: 0.73738 with p-value: 0.0 , Concordance Index: 0.84158\n",
      "Training at Epoch 20 iteration 0 with loss 0.34716. Total time 0.48305 hours\n",
      "Training at Epoch 20 iteration 100 with loss 0.53863. Total time 0.4975 hours\n",
      "Validation at Epoch 20 , MSE: 0.33516 , Pearson Correlation: 0.77387 with p-value: 0.0 , Concordance Index: 0.84370\n",
      "Training at Epoch 21 iteration 0 with loss 0.30970. Total time 0.50833 hours\n",
      "Training at Epoch 21 iteration 100 with loss 0.39576. Total time 0.52277 hours\n",
      "Validation at Epoch 21 , MSE: 0.37736 , Pearson Correlation: 0.77276 with p-value: 0.0 , Concordance Index: 0.85096\n",
      "Training at Epoch 22 iteration 0 with loss 0.67596. Total time 0.53388 hours\n",
      "Training at Epoch 22 iteration 100 with loss 0.29319. Total time 0.54833 hours\n",
      "Validation at Epoch 22 , MSE: 0.34973 , Pearson Correlation: 0.78179 with p-value: 0.0 , Concordance Index: 0.84884\n",
      "Training at Epoch 23 iteration 0 with loss 0.50858. Total time 0.55916 hours\n",
      "Training at Epoch 23 iteration 100 with loss 0.27916. Total time 0.57361 hours\n",
      "Validation at Epoch 23 , MSE: 0.35465 , Pearson Correlation: 0.76867 with p-value: 0.0 , Concordance Index: 0.84526\n",
      "Training at Epoch 24 iteration 0 with loss 0.23347. Total time 0.58472 hours\n",
      "Training at Epoch 24 iteration 100 with loss 0.32994. Total time 0.59916 hours\n",
      "Validation at Epoch 24 , MSE: 0.34731 , Pearson Correlation: 0.77464 with p-value: 0.0 , Concordance Index: 0.85036\n",
      "Training at Epoch 25 iteration 0 with loss 0.31434. Total time 0.61 hours\n",
      "Training at Epoch 25 iteration 100 with loss 0.48845. Total time 0.62444 hours\n",
      "Validation at Epoch 25 , MSE: 0.31257 , Pearson Correlation: 0.78941 with p-value: 0.0 , Concordance Index: 0.84966\n",
      "Training at Epoch 26 iteration 0 with loss 0.25747. Total time 0.63555 hours\n",
      "Training at Epoch 26 iteration 100 with loss 0.29390. Total time 0.65 hours\n",
      "Validation at Epoch 26 , MSE: 0.41570 , Pearson Correlation: 0.77330 with p-value: 0.0 , Concordance Index: 0.85038\n",
      "Training at Epoch 27 iteration 0 with loss 0.38151. Total time 0.66083 hours\n",
      "Training at Epoch 27 iteration 100 with loss 0.45719. Total time 0.67527 hours\n",
      "Validation at Epoch 27 , MSE: 0.33943 , Pearson Correlation: 0.78911 with p-value: 0.0 , Concordance Index: 0.85666\n",
      "Training at Epoch 28 iteration 0 with loss 0.50950. Total time 0.68638 hours\n",
      "Training at Epoch 28 iteration 100 with loss 0.45201. Total time 0.70083 hours\n",
      "Validation at Epoch 28 , MSE: 0.33336 , Pearson Correlation: 0.78770 with p-value: 0.0 , Concordance Index: 0.85942\n",
      "Training at Epoch 29 iteration 0 with loss 0.29684. Total time 0.71166 hours\n",
      "Training at Epoch 29 iteration 100 with loss 0.40529. Total time 0.72611 hours\n",
      "Validation at Epoch 29 , MSE: 0.39748 , Pearson Correlation: 0.77207 with p-value: 0.0 , Concordance Index: 0.84808\n",
      "Training at Epoch 30 iteration 0 with loss 0.48076. Total time 0.73722 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 30 iteration 100 with loss 0.37408. Total time 0.75166 hours\n",
      "Validation at Epoch 30 , MSE: 0.37723 , Pearson Correlation: 0.77485 with p-value: 0.0 , Concordance Index: 0.84584\n",
      "Training at Epoch 31 iteration 0 with loss 0.44539. Total time 0.7625 hours\n",
      "Training at Epoch 31 iteration 100 with loss 0.28918. Total time 0.77694 hours\n",
      "Validation at Epoch 31 , MSE: 0.31262 , Pearson Correlation: 0.78605 with p-value: 0.0 , Concordance Index: 0.84749\n",
      "Training at Epoch 32 iteration 0 with loss 0.22856. Total time 0.78805 hours\n",
      "Training at Epoch 32 iteration 100 with loss 0.24414. Total time 0.8025 hours\n",
      "Validation at Epoch 32 , MSE: 0.32184 , Pearson Correlation: 0.79049 with p-value: 0.0 , Concordance Index: 0.85522\n",
      "Training at Epoch 33 iteration 0 with loss 0.39881. Total time 0.81361 hours\n",
      "Training at Epoch 33 iteration 100 with loss 0.25344. Total time 0.82805 hours\n",
      "Validation at Epoch 33 , MSE: 0.31869 , Pearson Correlation: 0.78651 with p-value: 0.0 , Concordance Index: 0.85507\n",
      "Training at Epoch 34 iteration 0 with loss 0.32640. Total time 0.83888 hours\n",
      "Training at Epoch 34 iteration 100 with loss 0.29411. Total time 0.85333 hours\n",
      "Validation at Epoch 34 , MSE: 0.31366 , Pearson Correlation: 0.79233 with p-value: 0.0 , Concordance Index: 0.84977\n",
      "Training at Epoch 35 iteration 0 with loss 0.35424. Total time 0.86444 hours\n",
      "Training at Epoch 35 iteration 100 with loss 0.23229. Total time 0.87888 hours\n",
      "Validation at Epoch 35 , MSE: 0.30559 , Pearson Correlation: 0.79210 with p-value: 0.0 , Concordance Index: 0.85450\n",
      "Training at Epoch 36 iteration 0 with loss 0.47992. Total time 0.88972 hours\n",
      "Training at Epoch 36 iteration 100 with loss 0.35931. Total time 0.90416 hours\n",
      "Validation at Epoch 36 , MSE: 0.29680 , Pearson Correlation: 0.79450 with p-value: 0.0 , Concordance Index: 0.85157\n",
      "Training at Epoch 37 iteration 0 with loss 0.25862. Total time 0.91527 hours\n",
      "Training at Epoch 37 iteration 100 with loss 0.19525. Total time 0.92972 hours\n",
      "Validation at Epoch 37 , MSE: 0.33107 , Pearson Correlation: 0.78283 with p-value: 0.0 , Concordance Index: 0.85268\n",
      "Training at Epoch 38 iteration 0 with loss 0.25325. Total time 0.94055 hours\n",
      "Training at Epoch 38 iteration 100 with loss 0.23032. Total time 0.955 hours\n",
      "Validation at Epoch 38 , MSE: 0.35500 , Pearson Correlation: 0.78757 with p-value: 0.0 , Concordance Index: 0.85288\n",
      "Training at Epoch 39 iteration 0 with loss 0.29646. Total time 0.96611 hours\n",
      "Training at Epoch 39 iteration 100 with loss 0.34380. Total time 0.98055 hours\n",
      "Validation at Epoch 39 , MSE: 0.30462 , Pearson Correlation: 0.79993 with p-value: 0.0 , Concordance Index: 0.85301\n",
      "Training at Epoch 40 iteration 0 with loss 0.27913. Total time 0.99138 hours\n",
      "Training at Epoch 40 iteration 100 with loss 0.31593. Total time 1.00583 hours\n",
      "Validation at Epoch 40 , MSE: 0.30172 , Pearson Correlation: 0.79571 with p-value: 0.0 , Concordance Index: 0.86057\n",
      "Training at Epoch 41 iteration 0 with loss 0.30562. Total time 1.01694 hours\n",
      "Training at Epoch 41 iteration 100 with loss 0.38175. Total time 1.03138 hours\n",
      "Validation at Epoch 41 , MSE: 0.31752 , Pearson Correlation: 0.77891 with p-value: 0.0 , Concordance Index: 0.83916\n",
      "Training at Epoch 42 iteration 0 with loss 0.21801. Total time 1.04222 hours\n",
      "Training at Epoch 42 iteration 100 with loss 0.33428. Total time 1.05666 hours\n",
      "Validation at Epoch 42 , MSE: 0.31759 , Pearson Correlation: 0.79615 with p-value: 0.0 , Concordance Index: 0.85436\n",
      "Training at Epoch 43 iteration 0 with loss 0.34354. Total time 1.06777 hours\n",
      "Training at Epoch 43 iteration 100 with loss 0.31424. Total time 1.08222 hours\n",
      "Validation at Epoch 43 , MSE: 0.30612 , Pearson Correlation: 0.79931 with p-value: 0.0 , Concordance Index: 0.84946\n",
      "Training at Epoch 44 iteration 0 with loss 0.27707. Total time 1.09305 hours\n",
      "Training at Epoch 44 iteration 100 with loss 0.40303. Total time 1.1075 hours\n",
      "Validation at Epoch 44 , MSE: 0.34263 , Pearson Correlation: 0.80588 with p-value: 0.0 , Concordance Index: 0.86376\n",
      "Training at Epoch 45 iteration 0 with loss 0.29589. Total time 1.11861 hours\n",
      "Training at Epoch 45 iteration 100 with loss 0.35012. Total time 1.13305 hours\n",
      "Validation at Epoch 45 , MSE: 0.29946 , Pearson Correlation: 0.79868 with p-value: 0.0 , Concordance Index: 0.86121\n",
      "Training at Epoch 46 iteration 0 with loss 0.20943. Total time 1.14416 hours\n",
      "Training at Epoch 46 iteration 100 with loss 0.30827. Total time 1.15861 hours\n",
      "Validation at Epoch 46 , MSE: 0.32523 , Pearson Correlation: 0.81106 with p-value: 0.0 , Concordance Index: 0.85947\n",
      "Training at Epoch 47 iteration 0 with loss 0.30586. Total time 1.16944 hours\n",
      "Training at Epoch 47 iteration 100 with loss 0.30037. Total time 1.18388 hours\n",
      "Validation at Epoch 47 , MSE: 0.38656 , Pearson Correlation: 0.79707 with p-value: 0.0 , Concordance Index: 0.86043\n",
      "Training at Epoch 48 iteration 0 with loss 0.24547. Total time 1.195 hours\n",
      "Training at Epoch 48 iteration 100 with loss 0.19509. Total time 1.20944 hours\n",
      "Validation at Epoch 48 , MSE: 0.29610 , Pearson Correlation: 0.79502 with p-value: 0.0 , Concordance Index: 0.84940\n",
      "Training at Epoch 49 iteration 0 with loss 0.31231. Total time 1.22027 hours\n",
      "Training at Epoch 49 iteration 100 with loss 0.22893. Total time 1.23472 hours\n",
      "Validation at Epoch 49 , MSE: 0.29431 , Pearson Correlation: 0.80102 with p-value: 0.0 , Concordance Index: 0.85897\n",
      "Training at Epoch 50 iteration 0 with loss 0.23989. Total time 1.24583 hours\n",
      "Training at Epoch 50 iteration 100 with loss 0.32039. Total time 1.26027 hours\n",
      "Validation at Epoch 50 , MSE: 0.31459 , Pearson Correlation: 0.81542 with p-value: 0.0 , Concordance Index: 0.86792\n",
      "Training at Epoch 51 iteration 0 with loss 0.27515. Total time 1.27111 hours\n",
      "Training at Epoch 51 iteration 100 with loss 0.32952. Total time 1.28555 hours\n",
      "Validation at Epoch 51 , MSE: 0.28536 , Pearson Correlation: 0.80744 with p-value: 0.0 , Concordance Index: 0.86669\n",
      "Training at Epoch 52 iteration 0 with loss 0.20392. Total time 1.29666 hours\n",
      "Training at Epoch 52 iteration 100 with loss 0.20186. Total time 1.31111 hours\n",
      "Validation at Epoch 52 , MSE: 0.28039 , Pearson Correlation: 0.80956 with p-value: 0.0 , Concordance Index: 0.86050\n",
      "Training at Epoch 53 iteration 0 with loss 0.19544. Total time 1.32194 hours\n",
      "Training at Epoch 53 iteration 100 with loss 0.30262. Total time 1.33638 hours\n",
      "Validation at Epoch 53 , MSE: 0.30557 , Pearson Correlation: 0.80751 with p-value: 0.0 , Concordance Index: 0.86358\n",
      "Training at Epoch 54 iteration 0 with loss 0.20004. Total time 1.3475 hours\n",
      "Training at Epoch 54 iteration 100 with loss 0.26964. Total time 1.36194 hours\n",
      "Validation at Epoch 54 , MSE: 0.35729 , Pearson Correlation: 0.79170 with p-value: 0.0 , Concordance Index: 0.85460\n",
      "Training at Epoch 55 iteration 0 with loss 0.28603. Total time 1.37277 hours\n",
      "Training at Epoch 55 iteration 100 with loss 0.23985. Total time 1.3875 hours\n",
      "Validation at Epoch 55 , MSE: 0.28800 , Pearson Correlation: 0.80324 with p-value: 0.0 , Concordance Index: 0.85495\n",
      "Training at Epoch 56 iteration 0 with loss 0.26030. Total time 1.39833 hours\n",
      "Training at Epoch 56 iteration 100 with loss 0.17599. Total time 1.41277 hours\n",
      "Validation at Epoch 56 , MSE: 0.28492 , Pearson Correlation: 0.80676 with p-value: 0.0 , Concordance Index: 0.86834\n",
      "Training at Epoch 57 iteration 0 with loss 0.23044. Total time 1.42388 hours\n",
      "Training at Epoch 57 iteration 100 with loss 0.33332. Total time 1.43833 hours\n",
      "Validation at Epoch 57 , MSE: 0.27400 , Pearson Correlation: 0.81192 with p-value: 0.0 , Concordance Index: 0.86189\n",
      "Training at Epoch 58 iteration 0 with loss 0.18390. Total time 1.44916 hours\n",
      "Training at Epoch 58 iteration 100 with loss 0.24016. Total time 1.46361 hours\n",
      "Validation at Epoch 58 , MSE: 0.29721 , Pearson Correlation: 0.80494 with p-value: 0.0 , Concordance Index: 0.86233\n",
      "Training at Epoch 59 iteration 0 with loss 0.23875. Total time 1.47472 hours\n",
      "Training at Epoch 59 iteration 100 with loss 0.25276. Total time 1.48916 hours\n",
      "Validation at Epoch 59 , MSE: 0.28322 , Pearson Correlation: 0.81167 with p-value: 0.0 , Concordance Index: 0.86557\n",
      "Training at Epoch 60 iteration 0 with loss 0.23946. Total time 1.5 hours\n",
      "Training at Epoch 60 iteration 100 with loss 0.25848. Total time 1.51444 hours\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validation at Epoch 60 , MSE: 0.28859 , Pearson Correlation: 0.80190 with p-value: 0.0 , Concordance Index: 0.85149\n",
      "Training at Epoch 61 iteration 0 with loss 0.18136. Total time 1.52555 hours\n",
      "Training at Epoch 61 iteration 100 with loss 0.13198. Total time 1.54 hours\n",
      "Validation at Epoch 61 , MSE: 0.25764 , Pearson Correlation: 0.82526 with p-value: 0.0 , Concordance Index: 0.86559\n",
      "Training at Epoch 62 iteration 0 with loss 0.40128. Total time 1.55111 hours\n",
      "Training at Epoch 62 iteration 100 with loss 0.19237. Total time 1.56555 hours\n",
      "Validation at Epoch 62 , MSE: 0.27507 , Pearson Correlation: 0.82177 with p-value: 0.0 , Concordance Index: 0.86425\n",
      "Training at Epoch 63 iteration 0 with loss 0.20676. Total time 1.57638 hours\n",
      "Training at Epoch 63 iteration 100 with loss 0.15916. Total time 1.59083 hours\n",
      "Validation at Epoch 63 , MSE: 0.27158 , Pearson Correlation: 0.82301 with p-value: 0.0 , Concordance Index: 0.86502\n",
      "Training at Epoch 64 iteration 0 with loss 0.19927. Total time 1.60194 hours\n",
      "Training at Epoch 64 iteration 100 with loss 0.29626. Total time 1.61638 hours\n",
      "Validation at Epoch 64 , MSE: 0.27926 , Pearson Correlation: 0.80771 with p-value: 0.0 , Concordance Index: 0.86153\n",
      "Training at Epoch 65 iteration 0 with loss 0.14390. Total time 1.62722 hours\n",
      "Training at Epoch 65 iteration 100 with loss 0.25207. Total time 1.64166 hours\n",
      "Validation at Epoch 65 , MSE: 0.31910 , Pearson Correlation: 0.81445 with p-value: 0.0 , Concordance Index: 0.86545\n",
      "Training at Epoch 66 iteration 0 with loss 0.20309. Total time 1.65277 hours\n",
      "Training at Epoch 66 iteration 100 with loss 0.21438. Total time 1.66722 hours\n",
      "Validation at Epoch 66 , MSE: 0.26120 , Pearson Correlation: 0.82404 with p-value: 0.0 , Concordance Index: 0.85781\n",
      "Training at Epoch 67 iteration 0 with loss 0.12492. Total time 1.67805 hours\n",
      "Training at Epoch 67 iteration 100 with loss 0.18355. Total time 1.6925 hours\n",
      "Validation at Epoch 67 , MSE: 0.27153 , Pearson Correlation: 0.81471 with p-value: 0.0 , Concordance Index: 0.85970\n",
      "Training at Epoch 68 iteration 0 with loss 0.16578. Total time 1.70361 hours\n",
      "Training at Epoch 68 iteration 100 with loss 0.15980. Total time 1.71805 hours\n",
      "Validation at Epoch 68 , MSE: 0.31182 , Pearson Correlation: 0.81301 with p-value: 0.0 , Concordance Index: 0.86553\n",
      "Training at Epoch 69 iteration 0 with loss 0.21806. Total time 1.72888 hours\n",
      "Training at Epoch 69 iteration 100 with loss 0.17065. Total time 1.74333 hours\n",
      "Validation at Epoch 69 , MSE: 0.27909 , Pearson Correlation: 0.82072 with p-value: 0.0 , Concordance Index: 0.87009\n",
      "Training at Epoch 70 iteration 0 with loss 0.22051. Total time 1.75444 hours\n",
      "Training at Epoch 70 iteration 100 with loss 0.22403. Total time 1.76888 hours\n",
      "Validation at Epoch 70 , MSE: 0.28903 , Pearson Correlation: 0.81754 with p-value: 0.0 , Concordance Index: 0.86564\n",
      "Training at Epoch 71 iteration 0 with loss 0.22483. Total time 1.77972 hours\n",
      "Training at Epoch 71 iteration 100 with loss 0.12886. Total time 1.79444 hours\n",
      "Validation at Epoch 71 , MSE: 0.28957 , Pearson Correlation: 0.82535 with p-value: 0.0 , Concordance Index: 0.86788\n",
      "Training at Epoch 72 iteration 0 with loss 0.23266. Total time 1.80527 hours\n",
      "Training at Epoch 72 iteration 100 with loss 0.12978. Total time 1.81972 hours\n",
      "Validation at Epoch 72 , MSE: 0.29199 , Pearson Correlation: 0.82120 with p-value: 0.0 , Concordance Index: 0.86147\n",
      "Training at Epoch 73 iteration 0 with loss 0.21977. Total time 1.83055 hours\n",
      "Training at Epoch 73 iteration 100 with loss 0.17598. Total time 1.845 hours\n",
      "Validation at Epoch 73 , MSE: 0.27562 , Pearson Correlation: 0.82562 with p-value: 0.0 , Concordance Index: 0.87252\n",
      "Training at Epoch 74 iteration 0 with loss 0.10133. Total time 1.85611 hours\n",
      "Training at Epoch 74 iteration 100 with loss 0.16336. Total time 1.87055 hours\n",
      "Validation at Epoch 74 , MSE: 0.28066 , Pearson Correlation: 0.82345 with p-value: 0.0 , Concordance Index: 0.86680\n",
      "Training at Epoch 75 iteration 0 with loss 0.19160. Total time 1.88138 hours\n",
      "Training at Epoch 75 iteration 100 with loss 0.10826. Total time 1.89583 hours\n",
      "Validation at Epoch 75 , MSE: 0.25820 , Pearson Correlation: 0.82382 with p-value: 0.0 , Concordance Index: 0.86549\n",
      "Training at Epoch 76 iteration 0 with loss 0.12298. Total time 1.90694 hours\n",
      "Training at Epoch 76 iteration 100 with loss 0.16739. Total time 1.92138 hours\n",
      "Validation at Epoch 76 , MSE: 0.29430 , Pearson Correlation: 0.81714 with p-value: 0.0 , Concordance Index: 0.85946\n",
      "Training at Epoch 77 iteration 0 with loss 0.26421. Total time 1.93222 hours\n",
      "Training at Epoch 77 iteration 100 with loss 0.13882. Total time 1.94666 hours\n",
      "Validation at Epoch 77 , MSE: 0.27467 , Pearson Correlation: 0.82070 with p-value: 0.0 , Concordance Index: 0.86692\n",
      "Training at Epoch 78 iteration 0 with loss 0.26139. Total time 1.95777 hours\n",
      "Training at Epoch 78 iteration 100 with loss 0.24300. Total time 1.97222 hours\n",
      "Validation at Epoch 78 , MSE: 0.26353 , Pearson Correlation: 0.82841 with p-value: 0.0 , Concordance Index: 0.87452\n",
      "Training at Epoch 79 iteration 0 with loss 0.19619. Total time 1.98305 hours\n",
      "Training at Epoch 79 iteration 100 with loss 0.24014. Total time 1.9975 hours\n",
      "Validation at Epoch 79 , MSE: 0.28246 , Pearson Correlation: 0.82908 with p-value: 0.0 , Concordance Index: 0.87294\n",
      "Training at Epoch 80 iteration 0 with loss 0.14171. Total time 2.00861 hours\n",
      "Training at Epoch 80 iteration 100 with loss 0.21515. Total time 2.02305 hours\n",
      "Validation at Epoch 80 , MSE: 0.28665 , Pearson Correlation: 0.82672 with p-value: 0.0 , Concordance Index: 0.86649\n",
      "Training at Epoch 81 iteration 0 with loss 0.12668. Total time 2.03388 hours\n",
      "Training at Epoch 81 iteration 100 with loss 0.17310. Total time 2.04833 hours\n",
      "Validation at Epoch 81 , MSE: 0.24560 , Pearson Correlation: 0.83410 with p-value: 0.0 , Concordance Index: 0.86723\n",
      "Training at Epoch 82 iteration 0 with loss 0.20653. Total time 2.05916 hours\n",
      "Training at Epoch 82 iteration 100 with loss 0.14705. Total time 2.07361 hours\n",
      "Validation at Epoch 82 , MSE: 0.29181 , Pearson Correlation: 0.82151 with p-value: 0.0 , Concordance Index: 0.86267\n",
      "Training at Epoch 83 iteration 0 with loss 0.17648. Total time 2.08444 hours\n",
      "Training at Epoch 83 iteration 100 with loss 0.15540. Total time 2.09888 hours\n",
      "Validation at Epoch 83 , MSE: 0.26638 , Pearson Correlation: 0.83156 with p-value: 0.0 , Concordance Index: 0.86313\n",
      "Training at Epoch 84 iteration 0 with loss 0.15836. Total time 2.11 hours\n",
      "Training at Epoch 84 iteration 100 with loss 0.13807. Total time 2.12444 hours\n",
      "Validation at Epoch 84 , MSE: 0.26017 , Pearson Correlation: 0.82934 with p-value: 0.0 , Concordance Index: 0.86982\n",
      "Training at Epoch 85 iteration 0 with loss 0.10950. Total time 2.13555 hours\n",
      "Training at Epoch 85 iteration 100 with loss 0.16031. Total time 2.15 hours\n",
      "Validation at Epoch 85 , MSE: 0.25975 , Pearson Correlation: 0.82363 with p-value: 0.0 , Concordance Index: 0.86415\n",
      "Training at Epoch 86 iteration 0 with loss 0.18295. Total time 2.16111 hours\n",
      "Training at Epoch 86 iteration 100 with loss 0.15336. Total time 2.17555 hours\n",
      "Validation at Epoch 86 , MSE: 0.25682 , Pearson Correlation: 0.82713 with p-value: 0.0 , Concordance Index: 0.86402\n",
      "Training at Epoch 87 iteration 0 with loss 0.16924. Total time 2.18638 hours\n",
      "Training at Epoch 87 iteration 100 with loss 0.16347. Total time 2.20111 hours\n",
      "Validation at Epoch 87 , MSE: 0.25254 , Pearson Correlation: 0.83093 with p-value: 0.0 , Concordance Index: 0.87121\n",
      "Training at Epoch 88 iteration 0 with loss 0.11161. Total time 2.21194 hours\n",
      "Training at Epoch 88 iteration 100 with loss 0.22626. Total time 2.22638 hours\n",
      "Validation at Epoch 88 , MSE: 0.25485 , Pearson Correlation: 0.83037 with p-value: 0.0 , Concordance Index: 0.87769\n",
      "Training at Epoch 89 iteration 0 with loss 0.15458. Total time 2.2375 hours\n",
      "Training at Epoch 89 iteration 100 with loss 0.24311. Total time 2.25194 hours\n",
      "Validation at Epoch 89 , MSE: 0.24143 , Pearson Correlation: 0.83631 with p-value: 0.0 , Concordance Index: 0.87523\n",
      "Training at Epoch 90 iteration 0 with loss 0.13697. Total time 2.26277 hours\n",
      "Training at Epoch 90 iteration 100 with loss 0.13512. Total time 2.2775 hours\n",
      "Validation at Epoch 90 , MSE: 0.25525 , Pearson Correlation: 0.83190 with p-value: 0.0 , Concordance Index: 0.86743\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training at Epoch 91 iteration 0 with loss 0.18558. Total time 2.28833 hours\n",
      "Training at Epoch 91 iteration 100 with loss 0.12543. Total time 2.30277 hours\n",
      "Validation at Epoch 91 , MSE: 0.31018 , Pearson Correlation: 0.83026 with p-value: 0.0 , Concordance Index: 0.86909\n",
      "Training at Epoch 92 iteration 0 with loss 0.15772. Total time 2.31388 hours\n",
      "Training at Epoch 92 iteration 100 with loss 0.15616. Total time 2.32833 hours\n",
      "Validation at Epoch 92 , MSE: 0.25494 , Pearson Correlation: 0.82766 with p-value: 0.0 , Concordance Index: 0.87363\n",
      "Training at Epoch 93 iteration 0 with loss 0.12442. Total time 2.33916 hours\n",
      "Training at Epoch 93 iteration 100 with loss 0.10257. Total time 2.35361 hours\n",
      "Validation at Epoch 93 , MSE: 0.25587 , Pearson Correlation: 0.83045 with p-value: 0.0 , Concordance Index: 0.86683\n",
      "Training at Epoch 94 iteration 0 with loss 0.06660. Total time 2.36472 hours\n",
      "Training at Epoch 94 iteration 100 with loss 0.13033. Total time 2.37916 hours\n",
      "Validation at Epoch 94 , MSE: 0.25879 , Pearson Correlation: 0.83078 with p-value: 0.0 , Concordance Index: 0.87071\n",
      "Training at Epoch 95 iteration 0 with loss 0.13146. Total time 2.39 hours\n",
      "Training at Epoch 95 iteration 100 with loss 0.13458. Total time 2.40444 hours\n",
      "Validation at Epoch 95 , MSE: 0.26225 , Pearson Correlation: 0.82857 with p-value: 0.0 , Concordance Index: 0.86822\n",
      "Training at Epoch 96 iteration 0 with loss 0.11776. Total time 2.41555 hours\n",
      "Training at Epoch 96 iteration 100 with loss 0.09614. Total time 2.43 hours\n",
      "Validation at Epoch 96 , MSE: 0.26255 , Pearson Correlation: 0.83262 with p-value: 0.0 , Concordance Index: 0.87544\n",
      "Training at Epoch 97 iteration 0 with loss 0.14627. Total time 2.44083 hours\n",
      "Training at Epoch 97 iteration 100 with loss 0.09367. Total time 2.45527 hours\n",
      "Validation at Epoch 97 , MSE: 0.24460 , Pearson Correlation: 0.83580 with p-value: 0.0 , Concordance Index: 0.87175\n",
      "Training at Epoch 98 iteration 0 with loss 0.08548. Total time 2.46638 hours\n",
      "Training at Epoch 98 iteration 100 with loss 0.14478. Total time 2.48083 hours\n",
      "Validation at Epoch 98 , MSE: 0.25829 , Pearson Correlation: 0.83250 with p-value: 0.0 , Concordance Index: 0.87398\n",
      "Training at Epoch 99 iteration 0 with loss 0.17015. Total time 2.49166 hours\n",
      "Training at Epoch 99 iteration 100 with loss 0.12643. Total time 2.50611 hours\n",
      "Validation at Epoch 99 , MSE: 0.24204 , Pearson Correlation: 0.83609 with p-value: 0.0 , Concordance Index: 0.87753\n",
      "Training at Epoch 100 iteration 0 with loss 0.12052. Total time 2.51694 hours\n",
      "Training at Epoch 100 iteration 100 with loss 0.10614. Total time 2.53138 hours\n",
      "Validation at Epoch 100 , MSE: 0.27027 , Pearson Correlation: 0.83404 with p-value: 0.0 , Concordance Index: 0.87690\n",
      "--- Go for Testing ---\n",
      "Testing MSE: 0.3037221485010182 , Pearson Correlation: 0.8062234788484849 with p-value: 0.0 , Concordance Index: 0.8653339358554459\n",
      "--- Training Finished ---\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "drug_encoding = 'CNN'\n",
    "target_encoding = 'Transformer'\n",
    "train, val, test = data_process(X_drug, X_target, y, \n",
    "                                drug_encoding, target_encoding, \n",
    "                                split_method='random',frac=[0.7,0.1,0.2], random_seed = 5)\n",
    "\n",
    "# use the parameters setting provided in the paper: https://arxiv.org/abs/1801.10193\n",
    "config = generate_config(drug_encoding = drug_encoding, \n",
    "                         target_encoding = target_encoding, \n",
    "                         cls_hidden_dims = [1024,1024,512], \n",
    "                         train_epoch = 100, \n",
    "                         test_every_X_epoch = 100, \n",
    "                         LR = 0.001, \n",
    "                         batch_size = 128,\n",
    "                         hidden_dim_drug = 128,\n",
    "                         cnn_drug_filters = [32,64,96],\n",
    "                         cnn_drug_kernels = [4,8,12],\n",
    "                         transformer_n_layer_target = 2\n",
    "                        )\n",
    "model = models.model_initialize(**config)\n",
    "t2 = time()\n",
    "print(\"cost about \" + str(int(t2-t1)) + \" seconds\")\n",
    "model.train(train, val, test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
